UP DATE Vo, au
no Monorine
EXPLORING THE POWER
oa,
SINCLAIR COMPUTERS
THE CURRIDGE 298 THE SINCLAIR QL THE SINCLAIR TIMEX TS-2068
Portable Power 32 Bit Power House Versatile Desk Topper
In this issue...
UPDATE CONTINUES WITH NEWH PUBLISHER
QL OPERATING MS-DOS TS-2068 EXTRA MEMORY USING RAM DISK with TS-2068
PSICN'S THRE NN MOBIL COMPUTERS NEW Z88 PUBLICATION QL'S TEXT '87
PLUS- NEN ISSUE DISKS FOR BOTH THE SINCLAIR QL AND THE 15-2068
1317 Stratford Ave.
Panama City, Fl 32404
904 871 3556
News AnD NEw PRODUCTS
If wou like your Sinclair
Don't chase your tail---
Turn it around and get your tail
over to the Milwaukee Simclair Exro
The {490 SURELAIRCIMPTER post fin
HIKE UES
June 2nd §: 3rd
Banquet Friday Hight June ist
~ EHIME, SOPTURRE, WARURE, (OUR PRIZES, Sa HIP ~
Location ~ REAM WL TK ty 18 194 Hkeshe MI
Saturday June 2, 1990 will be the SHUG meeting
Tickets: in adv. /ot door
One Duy - 4.00 = 9,60
Two days~ 7.06 = 8.00
Banquet -1¢.00 722?
Tables: 30" x 6' 25.00 ech
If flying in call us, 414 353 4522,
with flight info. for transportation.
Mail your reservations to:
Expo Reservations, P.O. Box 101,Butler WI 53225
UPDATE CHANGES PUBLISHER
by Bill Jones
This announces that Frank Davis, 513 East Main Street, Peru, IN 46970 will
be taking over as publisher of Update Magazine with the October 1990 issue. We
hope that the subscribers will not notice any change in quality or depth of
coverage except for the better. I am delighted that Update will be a survivor
publication and will be published under such competent leadership as Frank Davis
can provide. I will help Frank as much as he requests to keep Update an
excellent publication.
Frank Davis is a long time user of both the TS-2068 and Sinclair QL. He has
recently been involved as the SNUG Librarian for public domain software. Frank
was a key person in organization of the 1988 Computer Fest at Indianapolis and
has been the editor of a TSUG newsletter. In addition Frank is in close
coordination with other SNUG officials in Indiana who will be at hand to assist
in keeping Update Magazine a good publication.
For those of you who have articles to publish please keep on sending them
in. I will turn over all un-published articles to Frank when the July issue is
finished. I am looking forward to having more time to spend on progranming and
my sailing hobby. Also I promised to take the Wife on a cruise in the Virgin
Isles.
The hints given in Update recently that I was about to quit publishing
brought on many letters urging me on. That was enough to make me reach out to
find someone to carry on the magazine. But how can one sell ice to Eskimoes,
Confederate currency, an old treasure map, a sunken boat, or a non-profit
magazine? But the effort paid off. Now we have another dedicated publisher to
keep Update going, the first Sinclair Timex magazine to survive the quits. I
urge all to give Frank Davis your support. Re-subscribe and try to bring in
another Sinclair Timex user as a subscriber. There are many inactive S-T “owners
who are not users". We need to find these folks and encouraged them to subscribe
to Update and re-join this enthusiastic group. The subscribers really are an
enthusiastic group having a convival spirit of friendship with a common interest.
Update is your magazine. There will be some complexion changes,, likely for
the better. Each publisher injects his own personality into the pages. Since
all Sinclar - Timex supporters are eccentric characters beyond help from couch
analyists, Frank Davis will likely bring in a new set of egocentrics and
incomprehensibles for you to enjoy. I quit with the hope that you are still
trying to figure out whether or not I have any literary talents or am truly the
curmudgeon that one of our subscribers suggested. My intent all along was to
confuse while injecting humor and a bit of satire to twit the perfectionists who
look for nits in the forest of verbs, pornouns, and infinitudes, and find many
because Update is too poor to hire a proof reader. Its the beef that counts.
I also would like to remind everyone that Update Magazine is not a profit
venture. The best that a publisher can hope to do is to avoid losing money. The
best that I could do during the three years was to put aside enough funds to pay
for the upkeep and entertainment on board the 200' yacht "White Star” as we plyed
the seas between issues. (Now I'll tell you. The "White Star” is a 45' sailing
yawl, built in 1936 at Bristol, Conn. It was our family vessel for 10 years and
was given toa boy's club in 1968 when I was sent to serve my Country in Viet
Nam. Sailing gave way to publishing three years ago and will be resumed with
salty zest.)
A good gesture of support to your new publisher would be to send him your
subscription renewal for 1991, which becomes due after the July issue is
received. I wish Frank Davis and the subscribers to Update good tidings. -BJ-
UPDATE Gets a New Editor After July
In the January issue of UPDATE, it was announced that if no
one could be found to carry on the publishing and editing of
UPDATE magazine that it would be discontinued with the July
issue (the last issue on the subscription year). Bill Jones was
getting a bit burned out and wanted to spend more time at his
other hobby, boating. It has been an excellent magazine and has
a fairly steady subscriber base. The magazine had been twice
offered to SNUG, but was not accepted at that time. At this time
SNUG plans to continue with its own newsletter, of which the
second issue is probably already sent out.
Well the gauntlet was thrown down and it has been picked up,
by Carol and Frank Davis of Peru, Indiana. After the July issue
is sent out from Panama City, Florida, the magazine will be
moved to Peru, Indiana. This means that all renewals of
subscriptions will go to UPDATE Computer Systems, P.O. Box 1095,
Peru, IN 46970, They will also, after the July issue is mailed,
be handling all orders for program disks from the magazine. In
the past this magazine has had near 100% renewal, and it is
hoped this will be continued. Most of the magazine will remain
pretty much the same, other than adding a colum on Sinclair
desktop publishing. We hope to retain all of the same writers
and perhaps add a few. At this time all prices ‘and policies
remain the same. The price for a subscription is $18.00 U.S.
The only change being looked at is that , with a postage rate
hike likely in February 1991, we may have to increase postage
for those subscribing overseas and in Canada by a dollar or two.
It costs more to mail out of the country. All correspondence or
questions on this should be directed to Frank Davis at P.O. Box
1095, Peru, IN 46970. Assisting the Davis family with this
venture is their longtime friend, Eliad P. Wannum, who will be
active in the editorial department. He will undoubtedly also get
stuck with a lot of collating and stapling of the magazine.
For those who do not know Frank Davis and his wife Carol,
allow me to say a few words. Remember the first Midwest
Timex-Sinclair Computer Fest at Cincinnati, Ohio? He was the guy
who got it all started and together with Jack Roberts and a
committee of 11 more, put on that show. The next year he went on
to produce the @nd Midwest Timex-Sinclair Computer Fest in
Indianapolis, Indiana. To this date, that was the largest and
best attended Sinclair show on this side of the Atlantic. Those
who attended the show the next year at Cleveland will have
remembered he was one of the moderators for the large meeting
for all attendees and that he presented a seminar on data
exchange between the TS1000, TS2068 and the QL. For the last
- four years he has been the Editor of the ISTUG Newsletter,
except for a few months that Mike Felerski had the helm. He was
one of the original founders of the Indiana Sinclair-Timex Users
Group, in which he is still very active. Presently, he is the
Head Librarian for SNUG. In each and all of these endeavors, he
has had the support of his wife, Carol, serving on all
committees, proofreading, typing , etc.
We will look forward to having the full support of all
subscribers, writers, programmers and Sinclair vendors. Thanks
to Bill Jones for giving us another chance to serve the Timex
and Sinclair users of North America.
4
PSION DEVELOPS THREE NEY COMPUTERS
A new generation of MOBIL full capability
Canputers!
(To prounounce PSION, drop the "P” and
say, 'si-aan' ).
PSION has been a leader in Software
development since the first Personal computers
were introduced by Sinclair. Some of PSION'S
classic softwares are: View Calc and View File
for the TS-1000, TS-2068 and Spectrum, Quill,
Abacus, Archive, and Easel, for the Sinclair
QL. PSION is an American Company based in
Watertown, Connecticut, and they are producing
a new line of computers.
First came a PSION "Minature", a
calculator size computer having full computing
capability and the ability to transport files
to and fron IBM compatables.
NOW A NEN SERIES OF "MOBIL" COMPUTERS
Now PSION comes in with a new line of
"MOBIL" Computers that have many new and
attractive innovations. PSION coined the name
"MOBIL COMPUTER" to better discribe the size
and portability of this new of
computers. The terms “portable" and
"Personal" . had become meaningless applying to
a wide range of computer sizes. Three new
computers are designed to have FULL DESK TOP
CAPABILITY.
PSION'S "Mobil" computers are the size of
a loose leaf note book, measuring two inches
thick and weighs 4 1/2 pounds. The three
models have clam shell design to provide a
full size screen that folds up to provide high
resolution viewing with built-in graphics
interface.
The three models of PSION Mobils are
designated: MC-200, MC-400, and MC~600. The
first two are designed with PSION'S ow
Operating System. The MC-600 is designed to
use MS-DOS and all of the software used by the
IBM compatable market.
Common Design Features
All three of the PSION Mobils employ the
newest technology of "Flash Memory SoHid State
Disk" (SSD). These SSD's are match book size
Flash Memory cells that act in the same manner
as disk drives, but have no moving parts.
Each of the PSION Mobils have four SSD’s Poult
in.
The PSION Operating Systen is ROM B
meaning that no outside DOS utilities ate.
required for operation.
ALL RAM MEMORY is held Non-Volatile by
replacable AA batteries that last for up to 75
computer operating hours. In terms of normal
usage this translates into months of
operation.
THE MC-200 - MC-400 Mobil Computers
These computers use the PSION Operating
System and have an ensemble of BUILT-IN
Softwares including, Word Processing, Personal
and Business Data Base Management, Personal
Diary, Full Function Calculator, and Terminal ~
Software for Telecommmication.
The MC-200 and MC-400 have SPEECH
PROCESSING. A built-in Microphone is used to
input speech which is stored in memory.
Speech processing includes its editing.
Entrys to the built in software can be made by
voice. Play back is also provided.
The MC-200 and MC-400 have a built-in
“Touch Pad", a Mouse atop the keyboard. The
Touch Pad is integrated with the built-in
softwares to provide menu item high lighting
for selections.
The MC~200 and MC-400 use the PSION "FAST
LINK" to transport files to and from either
IEM or Apple computers. Fast Link will be
discussed more as the MC-600 Mobile is
described.
THE MC-600 MS-DOS MOBIL COMPUTER
The MC-600 is designed for full
compatability with the widely used IBM
compatable systems. The MS-DOS 3,2 DoS is
built-in to the MC-600 ROM. PSION is
currently adapting its own Library of software
into the SSD format. Transportability of
MS-DOS disk files and programs is provided by
a built-in PSION Commmications Link. The
built-in software links any MS-DOS computer
via PSION's om “Fast Link", a serial
interface that transfers data at a rate of 1.5
Megabytes per second. Fast Link works with
both IBM and Apple Computers.
Remember, PSION has been a full capability
Software Enterprise since the beginning of the
Microprocessor Computer industry. Their vast
experience and library of software provide a
combination that is unique in the Computer
Design industry. Most Computer industries
build their computers and depend: upon outside
software support of their systems. That PSION
is converting their library of software for
this new line of Mobils promises un-excelled
software support of these computers for years
to come.
While the PSION MC-600 uses MS-DOS which
has wide software support, most new carputers
that have new Operating systems suffer from
lack of software support. PSION's in-house
software capability promises full software
support of the MC-200 and MC-400 from their
beginning. (See EMSOFT Ad for specs.) -BJ_
5
To a hundred who wrote: rie ronwany iste of Update uns meited on March 4. Not
anything to be proud of for sme. Excuse: My apple cart began to titt just after
Christmas, first with the need for removal of a colon pollup, then an angioplasty
operation to restore a chogged artery, and then a kidney procedure to blast aumy a
boulder. ALL this took 32 days in ye ofe hospital. I began to think that I'd have to
put ina change 0f address card to the postal service. In the meantime about 100
Letters were received asking Miates iy pagzeines (uheres the beeg?). A dozen on 40
had $18 checks inside, the writer thinking that perhaps he had forgotten to renew.
These checks were returned as all writers were current subscribers. I'm back in the
pink again now, so dont send pfowers. But the bills are beginning to arrive which my
cause worse pain than did the hidney stone. I thank everyone jor the pleaiantries
dnekosed in the Letters. (No one sent onions.) P
HAROLD A. ROMER
P.0.BOX 32 Compare the PSION MOBIL COMPUTER
JOHNSON CITY, TENN. to any other portable computer
37605-0032 now in production.
I have for sale the following items:
Dollar for Dollar, feature for
- = ‘me 1 :
2 ~ Ts1000 “itn coher Supply/manual feature, it can't be beat.
2 2x81 -with power supply/manual
1 - 2X81 With klik keyboard-w/ps & manual 40.00 Model MC-200 MC-400 Mc-600
2 = 18K menory(1016) 15.00 ea
1 - 32K (Memot. ‘
1 7 GAK Henpey (Memotech) 40:00 cpu tank 90c86 16 bit cHOS ##e
1 - Hunter board W/4 chip: 8 Speed (Mhz) 7.68 7.68 = 7.68
1 7 Eprom pane (HAY) for 2X81/TS1000 2/2732 35.00 BIOS mfg Phoenix Phoenix Phoenix
1 - 32 col ptr (2040) 40.00 RAM Standard 128K 256K 768K
1 ~ Mennesmann Tally Spirit 80 Ptr. poet RAM Maximum 512K 512K 768K
1 2 Some RStateres1000 6.00. «fi Screen idieg Mee eahaie
1 ~ Carry case/81/1000 10.00 type (LCD) SupTwist Retardation Film
1- osee ConteBtcal ogg 2600 protocol CGA DCGA DCCA
1 - Modem for * resolution 640x200 640x400 640x400
: Ww 30.00 i
i = Nee a ae atere ¢171000 45.00 col x line 8214 85x14 272
No. of Keys 69 69 19
HEHE HHHNENAHHAR HHA HH HARARE Detach keybd no no no
W's eet Slots Stand 0 0 0
QL TRIVIA-QLUE Prop 2 2 2
Battery type 8xAA Alk/Opt Rech NiCad Pak
HERE 18 GREAT NEW COMBINATION CAHEL
Pt Sra i ata ce life 60 hr 40 hr
Tae cette replace yes’ yes
ate wens 8 7 Ports Ser/Par ya yi
ee Video Port no yes
ee OR i, ee ‘out .
Pee Re TRIVIA, ESTIONS! ROM size 256K 256K
QUESTIONS COVER EVERY. Software
HOD er a ae ll PO" in ROM cur MS-Dos 3.2
Touch pad yes no
Also included, St 00 extra cost choice of Floppy Stand - 8
(Specify which you would Like when you order.) Floppy Ext. no 1.44Mb 3,5"
wu" Hard Disk no no
VE THINK YOU'LL LIKE THIS OWE!
OUR PRICE? OLY S19. 95 +42ph RAM Disk OK 1 Mb intern
AVAILABLE EXCLUSIVELY FRORS Maximum 2hh Gib
RMG ENTERPRISES Slots 4 4
Fast serial
transfer ***** External Option *****
Modem weeee External Option *#*st
Microphone yes yes no
Speaker yes yes yes
Programing
language OPL OPL n/a
Dimension RE 1204" x 8.9" x 19" tat
Weight (lbs) 4.3 43 4.3
Warranty Rethtett 17 months tetterte
Price $1199 $1699 $2999
BRRHHHNHHHHEHHHRRRRHHRARHREE
‘We cary ALL hardware and software lines for the Sinclair QL.
We also carry the 288.
WRITE FOR FREE CATALOG
Sharp’s, Inc.
Rt. 10, Box 459
Mechanicsville, VA 23111
(804) 746-1664 or 730-9697
Call for current quote from
EMSoft
Box 8763, Boston, MA 02114
(617) 889-0830
A New 298 publication nas surtaced. 288 Fax News is propagated by Fax
line or mailed to subscribers who do not have FAX.
of the issue received is duplicated below.
One of the four pages
Update Magazine presents this
as NEWS ONLY and does not necessarily endorse the 288 or 288 FAX NEWS.
Fax NEWS
ruary 1990
Cambridge N, America
Is cash a
problem?
So is Cambridge North
America broke or aren't they?
One CNA employce was
quoted as saying, “We are very
alive.” Others agree.
But reports still keep com-
ing in of financial dire straits.
Some say CNA owes Cam-
bridge UK more than $1
miilion. Others say CNA has
bought more ads than it can
afford, Some people say CNA
is simply bankrupt.
As is often true in research-
ing the records of a company,
researching CNA has proved
to be no less than confusing.
The search for the truth
begins with CNA’s name.
Marc Giguere of CNA said
CNA is merely an assumed
name for SSI Computer Sys-
tems, Inc., a Delaware com-
pany.
SSI is not to be confused
with SCT. SCI is the company
that makes the Z88 and IBM
and Wang keyboards, he said.
Giguere said Diversified
Foods owned New England
Sales, Unicorn Transportation,
and Cambridge North Amer-
Ica.
Publisher et
Facsimile...
2342 Glendale Ave.
Page Three
Z88s not just for little guys
It’s small, but “big’ people still use it
The Z88 has always been considered by
non-Z88ers to be powerless just because
of its size. But several famous people have
proven size isn’t everything. Many people
that are in the public eye are buying laptop
computers and the choice for some has
been the 288.
Singer Mel Torme, the jazz duo Tuck &
Patti, comedian/magician Teller of Penn
and Teller, and Anchorage Daily News
Editor Howard Weaver are all in the ranks
of those who own Z88s.
Mel Torme uses a Z88 and it’s said that
he is currently writing a book on it — that
is using it, not about it. Cambridge North
America has also reportedly approached
him about a making a televsion
commercial for them. It is stll unknown
what will come of this.
Tuck of Tuck & Patti, an internationally
famous jazz duo, is said to be a real power
user. Tuck has a $12K RAM card in the
first two ports and several EPROMs to
use in the third. Tuck supposedly uses it
all the time and takes it everywhere.
Teller, the silent half of Penn and Teller
from New York City, surfaced on the 288
BBS in Torrance, Calif. (BBS phone
number: (213) 370-2754), Teller has a
Z88, but not much else it certain — after
all, he is the quiet one. Peon and Teller,
though, apparendy have been computer
buffs for some time. Atone time they — or
some real good fans —,were running a
Penn and Teller Fan Club BBS.
And even Howard Weaver, the editor of
the Anchorage Daily News, uses a Z88.
He has written a few interesting programs
for it and is considering buying Z88s for
his reporters.
Z88 Fax News will keep its readers
updated on famous Z88 owners. Watch for
more articles on this subject in the next
few months.
— Curtis Claar
Casper, Wyo. 82601
Fax or voice (307) 766-7026
Welsh company sells lnkup packages
He said that 4-5 months
ago, Diversified Foods was
bought by the Bank of Boston
and Cambridge North America
subsequently separated from
the conglomerate. He said
see CNA
page three
The Music Suite Ltd, in
Wales is now offering two
linkup packages for the Z88,
They have been offering a
hardware and software linkup
package for the Atari ST for
nearly two years now and last
year they came out with one
for the Amiga. They have
plans for a PC version as well.
The Music Suite is run by
Adrian and Helen Wagner and
Francis Monkman,
“It has always been our
intention to fully support our
software,” Adrian said in a fax
7)
letter last month. Because of
this, they claim to offer more
than simple dump programs.
According to advertising,
the programs also route Z88
printer output to printers con-
nected to the ST or the Amiga.
A review is forthcoming.
The Z88 and Telecommunications
by Dave Bennett
The Z88 is particularly well
suited for communicating to modems
and other computers. A serial port
which communicates up to 38,489
baud, a VT52 terminal program and
a dedicated file transter utility
are included with the stock 288.
The Z88 also weighs only 2 pounds
and is easily transported right
next to the device you want to
communicate with.
My Z88 is mainly used to talk
to a pocket modem and a @L. 286
files are archived on a QL disk. I
also occasionally communicate with
PCs at work and other 288s.
I have designed and built
cables to communicate with the @L,
PCs and other 288s. I built the
modem cable from recommended
pinouts by Cambridge.
The @L cable is as follows:
zes8 al SER2
2 -- 3
a- 2
1-4 4
1-5 t s
6 6
Pies 7?
Lio - aed 8
ond 9
I have tried several other
designs for a Z68 - @L cable but
have not found a cable that works
as well for transfering files.
What I-use to transter files
are @Link for the @L and Z88COM
for the Z88. @Link is a shareware
terminal program from Harvey
Taylor. It includes CRC and
Checksum xmodem as well as many
other features. zeecon is a
publicly available terminal
program from Phil Wheeler. It
extends the built-in VT52 with
checksum xmodem and some other
features. Phil also operates the
Z88 BBS in Los Angeles.
1 basically connect the
computers with the cable and = run
terminal programs which utilize
xmodem on each machine. You set up
one machine to send and one to
receive. Then you start the
transfer on both machines at the
same time.
You can transfer ascii files
without xmodem by various means
but I prefer to use xmodem. It
provides error checking in the
transfer so you know the files are
transfered OK. You can also
transfer any type of file even
machine language.
zes to PC and Z86 to 289
transfers work similarly. On the
PC I prefer to use PROCOMM. It is
a powerful program and extremely
easy to use. I would like to see
it made available for the QL. For
2788 to Z88 transfers I am using
Z88COM on both machines.
The Z88 - PC and Z88 - 288
cables are as follows:
288 DB?
PC DB2S
There also is a variation on
Z88COM called Link by Dave
Armstrong which turns the 288 into
a mini BBS. There are no message
facilities but you can transfer
files. All typing is done at a
remote computer. The Z88 just sits
there. It is similar to PROCOMMs
Host Mode. It works well connected
to a computer in the same room.
Modem facilities were removed from
this variation but you can connect
to the modem and then switch to
Link by hand. With this program
you can transter files with
Someone across town at a
prearranged time. You could even
transfer QL and 2068 files.
There also is another program
available for the Z88 called ZFU
by Richard Haw. This is a utility
which takes many files and
archives them into one large tile.
In the process it compresses the
files so the resulting large file
is much smaller. You can archive
all the files in all the ram
devices of the Z88 into one file
and just backup that one file to
your @L or whatever.
The Z88 also works nicely with
any Hayes compatible modem.
Here are the official modem
Pinouts from Cambridge:
The Z88 includes a built-in
vTS2 terminal emulator. It works
quite nicely although you have to
dial manually with Hayes AT
commands. It is also easy to send
and receive ascii files with just
the built-in software. The
built-in VT52 also connects quite
nicely to a VAX mini computer once
you tell the VAX you have a VTS2
with 8 lines.
But I like Xmodem. A terminal
program was developed in England
which provides xmodem. The
disadvantages of this program are
its high cost and it also adds its
own protocol in place of the VT5S2.
The built-in VTS2 works .much
better.
Fortunately Z88COM came out
which provides xmodem but works in
concert with the built-in VTS2.
Z88COM is also much cheaper. In
most cases it is available for the
cost of a download, ZS8sCOM can
also autodial and autologon to
five systems. It has a message
upload feature for sending text
files. All in all it is a great
program.
The latest I heard was that
Cambridge just came out with a
VTi9®@ terminal program. I have not
heard too much about this. The
VTi98 can display graphics from a
remote IBM or VAX. It moves the
cursor around your screen on
command from the remote system. I
am not too sure how well this will
work on the Z88 with its 8 line
screen but it sounds interesting.
The Z8@s portability and sheer
connectivity to anything speaking
RS232 make it a great little
computer for telecommunications.
HARK 288 USERS: (waar a nice cuy!!)
Dear Bill, I have been trying to
promote the 288 for about two years. I
have about 350K of 288 programs and
related OL programs that were downloaded
fron two main 288 BBS: 703-968-9438,
213-370-2754, and GEnie.
I can put the files on a QL 720 sector
disk or a IBM 360K disk. In the case of
the IBM disk I will substitute some IBM
programs instead of QL programs. See
below:
288 Public Domain and Shareware Programs:
(Approx 350K of files)
Available on QL DSDD 720 sector disk or
IBM 360K disk. The QL disk includes 288
related QL programs. The IBM disk
includes IBM related files.
PRICE: A dollar to pay for mailing, or
two dollars to mail in a disk mailer.
David Bennett
329 R. Walton St.
Lemoyne, PA 17043
THE SINCLAIR Ql
(| BITCH! BITCH! AND DO NOTHING )
"My Sinclair QL is 40 un-neliahke that I cannot get a simple one page Letter done without
the QL crashing. The crash usually happens when the refrigerntor or funnace kicks on.” This
complaint was received a year ago from a OL Subscriber. Still, almost every week I talk toa
QL user who is still having such problems in varying degree. THERE IS NO EXCUSE FOR HAVING
SUCH PROBLEMS ANY MORE!! Read on--
March 17, 1990
Bill Jones,
The Q/L on which this letter is being composed has been
modified per Dan Elliott's article. (July 1989) The lock up
problems associated with the Q/L power supply plaque me no
more. There is no longer a need to save text every few
minutes. The only lock up experienced now is caused by
conflicts between the software and the inputter.
The Coleco power supply is enclosed in a fabricated, black
case, with openings for air flow and ts now sitting on the
floor providing cool uninterrupted power. This modification
is not difficult, it's not expensive, and is highly
recommended. Tell everyone to do it themselves or call Dan,
but get it done!
My confidence in the Q/L is now such that I am in the process
of putting together a disk drive system and saving for a
Trump Card expansion. The microdrives work fine, usually, but
I would prefer a faster, more reliable systen.
Ha !! The furnace just came on and someone started the
microwave and I am still input'in. To bring this to a close,
I thank you and all who contribute to the cause of keeping
the T/S computers working; the writers, programmers, and
dealers.
Sincerly, Dan Elliott Repairs all Computers
AX RR-1, Box 117 Specializes in repair
Donald R. Yones Cabool, MO 65689 of QL and TS-2068
1900 Sunvale Tel 417 469-4571 Power mods for both
Olathe, KS 66062 (weekends)
_ (ry Coleco Ps SiTs uncer ‘The mon sT2.)
Ed note: Need I say more? But I will. Some QL users get the downs because they are
affected by the dis-respect fran the Yuppies, the ridicule from the $5000 IBM users, the
syndrane "I only paid $100 for it so it must not be very good", and the "Sinclair abandoned
us syndrome". ANYTHING to bolster insecurity and lack of self esteem. But others are
bragging that their QL does 10 times as much as the IBM AT. I guess that is the difference
between the pessimist and the optimist. You know what I mean. The pessimist believes that
the sky is falling upon him, while the optimist believes that the sky is rising with him in
it. Me? I believe that when one has a problem he should fix it. When it is forecast to
rain I leave my hat behind as I go fishing. On Sunday I believe that the preacher will soon
quit talking. I'm always sure next months bills will be less, that Ed McMann will send me
that million that he promises, and the Wife wont have a headache. Don, my QL is working fine
too! But work on that interface conflict, and you'll overcome. -BJ_
10
Ruminations From The QL Editor
There is a lot of interest among QL users about
the PC world and MSDOS operating system. Its
makes sense because the influence of PCs on
personal computing is tremendovs. Digital
Precisions emulator, PC-CONQUEROR, makes it
possible for any QL user with disk drives and
memory expansion to turn their QL into a quasi
PC. This is certainly a novel capability and
has useful applications but be aware that the Ql
makes for a SLOW PC, The QL is a fine computer.
With disk drives, memory expansion, or TRUMPCARD
it can still hold its om against a PC. It is
slower in many ways but has capabilities that
most PCs do not. If you use your QL effectively
you’ can still work as fast or faster on it than
most PC users can on their canputers. It can
serve you well for years to came.
to use your QL effectively probably makes
more sense than playing around with MSDOS on
it. The purpose of UPDATE Magazine is to
help you reach that maximum potential with your
Qh.
That said, I need to explain why we are
giving so mich coverage to MSDOS in this issue.
It’s definitely not because we fee] that the QL
is dead and we all need to swtich to MSDOS.
It's because we want to provide information to
our readers. There are many QL users who are
curious about MSDOS and many others who work in
both the QL and PC worlds. UPDATE needs to
check out QL Software related to PCs such as :
DISCOVER (allows QL PC disk conpatility, $40),
PC CONQUEROR (PC emulator and allows QL PC disk
compatibility, $15077). PC software related to
the QL include : PSION's PC-FOUR (PC versions
of QUILL, ABACUS, EASEL, and ARCHIVE,$99).
This issue is packed. Part III of David McCall's
WINDOW DEFINING series focuses on SUPERBASIC
procedures.
Peter Hale starts a 2 part series on TEXTS7.
Al feng clears the air about ROMs on the QU.
Bob Hartung shows how to set up an ARCHIVE
address database.
Bill Jones shows us some QUILL printer
driver tricks.
We have lots of coverage of PC CONQUEOR and
MspoS with articles by both Bob Hartung and Al
Feng.
There are a couple of articles about the
TS-2068 that the QL users may benefit fram, One
is about Dot Matrix printer drivers. The other
is a Business Software for the TS-2068, done in
Basic. This excellent program offers a
challange to the QL users to clone it in Super
Basic. The benefits will be worth the effort
and the conversion should be good practice.
Finally, I explore the QL-PC connection
through ARCHIVE by showing how I converted one
of my ARCHIVE programs to work on a PC. And
there is more.
Next issue David McCall will tie up his Window
Defining series and we will have an Issue Disk
of it. Peter Hale will continue his in depth
description of TEXT87. More of Timothy
Stoddard's TRUMP CARD Manual.
Don't forget about the 1990 Sinclair Computer
Exposition in Milwaukee hosted by SMUG on the
weekend on June 2&3. See You there.
li
WOOD AND HIND COMPUTING
Bill Cable : RR 3 Box 92 : Commish, NH 03745
CABLE COLUMN
QL - ARCHIVE - PC
Databases are specialized programs for efficient
handling of both text and numeric information on a
computer. Anyone trying to put their computer to
good use should be using a database in one form or
another. As many of you know I am a great fan of the
ARCHIVE database and programming language. I write
commercial software with it. For handling
information on a QL it has no peer for its
capabilities. This is not to say that there is not a
price to pay for using ARCHIVE. Either you have to
lear how to use its programming language or you
have to buy ARCHIVE programs. Other alternatives
include buying FLASHBACK or write or buy database
type programs written in SUPERBASIC or other
languages.
In earlier issues of UPDATE I have tried to explain
the basics of using ARCHIVE, Now that I see there is
so much interest in MSDOS by QL users I want to push
ARCHIVE from another angle. If you want to be able
to do something useful on MSDOS computers then learn
the ARCHIVE language on your QL. 1 have been aware
that there is PC version of ARCHIVE. But wntil
recently 1 have had very little experience on MSDOS
machines (PCs). After tackling my first serious
conversion attempt (making DBEasy work ona PC) I
would say I am already close to being an expert with
PC-ARCHIVE because the PC and QL versions are so
similar. Almost all of the ARCHIVE I have learned on
the QL can be transfered directly to the PC. DBEasy,
my ARCHIVE database manager, is now available in
both QL and PC versions (see my ad). The importance
of this QL-PC connection should not be minimized.
fransporting software and experience from one
computer to another is generally a very difficult
process. If you take an elaborate SUPERRASIC program
and try to convert it to rum on a PC using one of
the PC BASIC languages, almost certainly you would
have to make major changes to the code and a lot of
learning to do as well. So learn the ARCHIVE
language on your Ql and you can apply what you have
learned directly to a PC, You can transfer your
databases and programs to a PC as well. And its not
like ARCHIVE is an inferior language. I still
maintain that it is one of the nicest languages
around. Its a nice structured procedure oriented
superior database for PCs. Just
ignored by the masses, PC-ARCHIVE is ignored even
though it is a fine database. And compared to the
price of DBASE or PC database programs it is a
bargain.
This Cable Colum is going to describe how I went
about converting my DBEasy program to the PC. This
included purchasing a PC computer, the Amstrad
PPC640 portable, and learning a little bit about
using MSDOS. I will also give sane statistics
comparing DBEasy’s performance on the QL and on
different PCs. We already have ARCHIVE for our Qis.
For the PC you must purchase it as a package with
QUILL, ABACUS, and EASEL called PC-FOUR. The price
is about $99. It can be purchased from me (see my
ad) or EMSOFT or RMG or Sharps. If you work on a PC
it makes sense for you to have PC-FOUR because you
use the same programs on your Ql. The PC versions
also have extra features. It's pure folly to
purchase PC-FOUR to use soley with PC-CONQUEOR. The
- QL makes a poor PC,
Choosing a FC
Before I could do serious PC work I needed a PC
computer. DBEasy swamps PC- so I couldn't
do the work on my QL with the emulator. Even if it
worked, life is too short for its snails pace. The
possible choices for a PC are limitless. They range
from an XT type (8088 or 8086 processor) or an AT
type (80286) or an 80386 machine with prices from
$500 to $2000. My final choice was a portable by
Amstrad, the PPC640, It is an XT type but the 8086
processor has a 16 bit data bus so it is almost as
fast as an AT of similar clock speed (8 Miz). It is
too heavy to be a laptop but is totally portable and
takes little space to set up. It will run from
batteries or 12 volt DC (as in a car) or norml
house current. I have my own home power system and
the fact that it uses only 20 watts of power and I
can run it on 12 volt DC were big pluses to me. I
also liked it having a full size AT style
keyboard, It has two 720k 3 1/2 inch drives. It has
an LCD screen (no backlight) but will also plug into
my Magnavox RGB monitor with OGA display. I use the
same monitor with my QL. The PPC640 also has a built
in 1200 baud modem with phone connector and is
provided with software to run it. It has 2 serial
ports and 1 parallel port. I bought it from
UNDER-WARE Electronics (800-442-1408) as advertised
in Computer Shopper for $700 plus $25 shipping.
Although still available, it is no longer in
production and was originally suppose to sell for
something like $1200. There are also versions with
one disk drive and no modem available for less. It
comes with DOS 3.2. It has worked flawlessly for me
and I recommend it. The keyboard action is not the
best but works fine. The drives are quiet. The LCD
screen needs good room lighting but is adequate. I
have found it to be fast compared to my QL mostly
because of mich faster screen handling. There is
suppose to be a 20 Meg portable hard drive available
for $300 but I don't have it yet. It is certainly an
inexpensive way to break into the PC market place. I
have a comprehensive payables/receivables package
for hone and small businesses written in QL-ARCHIVE
that is almost ready for release. By converting it
to PC-ARCHIVE, I have a package to sell locally to
small businesses. Later if things go well I will
consider getting a more versatile 386 machine. Have
I abandoned my QL? No way! I consider Q00S a more
flexible operating system than MSDOS and I like
being able to multitask. I don't want tg abandon
SUPERBASIC with its excellent language for making
quick programs with very flexible graphics. Even if
slower in some respects, I can still work faster on
my QL because of its excellent features. In the
future I will work on both the QL and PC machines.
It is certainly nice to have the 4 PSION programs
available on both.
The DBEasy Program
DBEasy is a front end database manager for ARCHIVE.
It allows you to use most of ARCHIVE's features
without having to know anything about its language.
It allows the user to create and manage all Sorts of
databases. It is a large complex program (55k on the
Ql and 56k on the PC) but very simple to use. As
with any friendly software most of the development
effort went into making clear and simple menus and
displays. ; . 3 ae
Transfering DBEasy to a PC
Now that I had a Ql, a PC, ARCHIVE for both I next
needed to transfer my QL files to the PC. There are
at least 2 ways available. The best way is to use a
QL software like DISCOVER or to copy
them to a PC formated disk on the QL and take the
disk to my PC. I couldn't do that because my QL has
5 1/4 drives and my PC has 31/2 drives. I have 3
1/2 drives on order for my QL from RMG to make life
easier. SoI had to.use the serial ports on my Qb
and PC to transfer the files. I used the
communication software, MIRROR II, on my Amstrad to
commnicate with my QL which had software so it
emilated a VT-52 terminal. I had some trouble
figuring out the cabling. Peter Hale provided the
necessary expertise to finally get it working. After
that it was simple. Only text (ASCII) files can be
transferred. This means I have to have my ARCHIVE
programs in _prg form rather than _pro form. If you
save a program in ARCHIVE with the SAVE "filename"
command then it is saved in ASCII format (_prg). If
you save it with the SAVE OBJECT "filename" command
then it is saved in binary format(_pro). Normally
you keep large programs in binary format because
they load faster but for transfering to the PC I had
to put them all in ASCII files. Also my databases
had to be in export (_exp) files (ASCII) rather than
database (_dbf) files for the same reason. Since
screens (_sm) are not ASCII files I can't transfer
then. I must reconstruct them with the ARCHIVE SEDIT
command on my PC. After transferring I started
PC-ARCHIVE, imported the databases, rebuilt my
Screens, started DBEasy and changed code where
problems existed.
Sane differences between QL and PC ARCHIVE :
The most important difference for me is that there
is no POSITION camvand and RECNUM() function in
PC-ARCHIVE. I like to use those features to keep
track of where I amin a database. If you use the
FIND command it is nice to know how far you are in
the file if you find -, They have been
xeplaced in PC-ARCHIVE by a more powerful ordering
and selecting process that allows youto keep 4
ordering and 1 selecting definitions at the same
time and switch between them. This is a very
Powerful feature but my code doesn’t take
of it yet. The BACKUP command works differently in
the 2 versions. On the Ql, it is similar to a general
file copy command but on the PC it only works on
databases and does a record by record copy. In
PC-ARCHIVE there is no FORMAT command. There is no
RENAME command in QL-ARCHIVE, The PC-ARGHVE has
more canplexities with paper and ink colors because
mono and color monitors display differently.
PC-ARCHIVE and the other PSION programs have a
special task sequencing language (TSL) which can be
used to control the program at startup, This allows
me to have ARCHIVE and DBEasy. start up
automatically, something I can't do with QL-ARCHIVE.
These are the major differences I have discovered
when I tried to run DBEasy on the PC. The hardest
part was dealing with all occurences of RECNUM() and
POSITION in my code. I have worked out a display
can plan ahead so conversions will be much easier.
Since PC-ARCHIVE has more features than QL-ARCHIVE
it will not be as easy to transfer back to the QL
once I take advantage of those features.
12
DBkasy Performance Chart (time in sects)
Shee as tee HOOD AND WIND COMPUTING
DBEasy QL IBM PC PPC64O AT aT SOFTWARE FOR THE QL and PC
Task ™hz 4Mhz @Mhz 10 MHz 20MHz
tad 69~«O«SASSSTSSABSCL QL SOFIMARE
Find x i 9
Hed, 15 7 2 GOS HISTERS 5 « group of surenaasic and
step 58 50 19 12) «8 ARCHIVE programs (DIRLUX, FILEX,DBEasy) that
10 records will help organize = all._—your
disks/microdrives so you can make sense out
Display 17 20 7 5 2 of them. It includes DIRlux which
new page displays/prints directories is a colum
format and ahs a file finder. Also included
sum 3 9 4 2 1 is FILEX which makes a export file for
Population ARCHIVE of your disks so you can make an
instant database of all your files. You
Order 13 18 9 7 1 : import the FILEX export file into ARCHIVE
by ‘country’ with DBEasy which is also included. DBEasy ©
is an easy to use front end for ARCHIVE so
Locate 4 4 2 9 2 é you can make and manage all sorts of
"SWEDEN" databases without knowing the first thing
about ARCHIVE. DBEasy is also available
Select 19 24 12 7 2 separately and is described below. CHAOS
‘Europe’ BUSTERS is tied together through a Main Menu
2 So you can do move around easily between the
In the chart above I give elapsed time for DBEasy to options. It is supplied with ample
do various tasks ona few different computers. I documentation plus extra software not
used my DBEasy program with the gazet database (155 described. If you already have DBEasy you
countries of the world) modified for DBEasy. The can purchase CHAOS BUSTERS for $9.95.
time is in seconds. The 20 MHz AT used DBEasy from ($29.95 5 1/4 or 3 1/2 disk)
hard drive. On all the others it ran sil pee TREss
drive. I must say that using DBEasy on iz . ;
machine was almost intimidating. You couldn't slow ; amen eARSHIVE ogee that makes (Using
it down by doing anything. Some may be horrified to simple menus You don't need to knw
see how slow the QL is. But except for the tasks fend : h of any
which ; ARCHIVE commands but still have most of
require heavy screen work the QL gives very ARCHIVE’
S power. It allows for the creation
acceptable responses. And those that were slow like and H £ databases
stepping through 10 records are adequate because you trp ig eke oes ail
applications. You can easily switch any of
your databases. ($21.95 on 5 l/4or 3 V2
disk, $24.95 on 2 micro)
wouldn't be stepping through the records unless you
wanted to read them and you need that mich time for
absorbing the information on the screen. Also notice
that finding things in a database Rd Lats
efficiently done by ordering and using locate i: |
possible. Locate is fast and is pretty mich FC Software for IBM compatibles
independent of the database file size.
PC-EOUR by esto : the same QUILL, aRAcs,
How do we judge the QLs performance against the FASEL, and ARCHIVE that you use on your QU
other machines? I, QL much slower in its screen for the PC. They have more features than the
handling. This is evident in QUILL and ARCHIVE. I QL version. They come on 5 1/4 360k disks
tried SPEEDSCREEN and LIGHINING but they didn't with a thick manual and a tutor disk that
improve the times. Sane programs still menage to make it easy to learn how to use them if you
give fast screens. The EDITOR and TEXTS7 are don't know already. I will include
examples. Also the Qu was multitasking QUILL while free with any purchase of PC-FOUR.($99 on
DEEasy was being run. That didn't affect speed 5 1/4 disks)
of doing the tasks ‘because QUILL was sitting idle DRE
None of the other carputers can multitask. None of Y : for those who aready have :
the other computers can network either without PC-ARCHIVE I offer DBEasy in a PC version.
expensive equipment. And the AT machines cost 2 to 5 Tt works almost exactlty like the Ql version
times as mich as the QL. At same point I will try and you can export QL DBEasy database to the
these same tasks on a THOR and pass on the results, PC and back. ($21.95 on 5 1/4 or 3 1/2
It should be mich closer to the AT machines. If you disks)
Were to judge the QU purely on response times it
shows its age. If you judge it on overall features le! ite a.
taking into account its powerful operating system, :
its cost, and how much you can accomplish with it z :
then it still can hold its om against most Pcs. Wood and Wind
(Bill cable)
Ihave quite a group of Q& Softwares and I'm RR-3 Box 92
developing more for both the Ql and the IEM. All Cornish, NH 03745
are priced low for what they do. I will list four 603 678 2218
of my newest. I invite you to call or write for a
complete listing. Bill Cable. iN per
SETTING UP QUILL FOR PRINTERS
Setting up TYPEFACES for F4
WALL Version 2.35 (or anu)
©
The ITNSTALL_BAS" program in our PSION suite
is used to do all of these jobs to make our
printer do what we want it to do. INSTALL_RAS
is used to revise our PRINTER_DAT program in the
PSION suite for use by the Quill, Easel,
Archive, and Abacus softwares. So, how do we do
it? Peter Hale gave one way to do it in the
last issue of Update. This time we will do it
ina simple fashion. If you had trouble with
the procedures given in Peter's article, try
this and when it works, go back to Peter's
article for a more elaborate printer control set
“P- PIRST A DEMONSTRATION:
This and the above style is gotten by use of
the F4 Key and "B for BOLD"
This style is gotten by use of the F4 Key
and "U for Underline”.
This style is gotten by use of the Fé Key
and "H" $0 High Script”.
This style is gotten by use of the F4 Key
and "L for Low Script”
Such Combinations «4 these three lines
demonstrate axe gotten by using the F4 Key and
repeated electives of "B, H, L, or U".
But what about this style of print that
comes up as “standard” when PRINT is elected at
the Quill Command menu? Well, the normal
“printer_dat" program puts you in "draft quality
mode", while this style is "Letter Quality"
OK. The illustrations are just to show that
the quife F-4 Key electives for TYPEFACE need
not be for the print styles given to us in the
PSION suite. In fact, each type of printer has
its own typefaces that can be substituted for
such PSTON) of4nctives as “high script) low
script, and . And, you can set in any
style that you choose for these F4 electives.
The styles demonstrated are those that I
elected to install in the Printer_Dat program
for my KXP-1124 printer. Each user needs to
decide what style is wanted and then proceed to
change the Printer_dat program to his needs.
This is done by using the Printer Manual to
find the Command Codes to “install” in the
Printer Dat program. The "process of
installing" is via the use of the “INSTALL BAS”
program that is in your Quill disk (MDV).~
Now Lots do it!
The electives given in the steps below are
my own for my printer. Use your Printer Manual
to substitute the canmand codes for the
electives that you choose in each of the steps.
1. Leave FLP1 and MDV1 Empty and turn ON the
QL. Then the Fl Key will put you in Super
Basic.
2. We will use FLP commands but you can use
MDV instead.
3. Remove the write protect tab on the
floppy.
4. TYPE: LRUN FLP1_INSTALL_BAS
5. When the Install_bas program loads you
will need to:
a. elect the drive that your Quill disk
is in.
b. elect the ser port that you use for
your printer.
6. The “Current Printer_Dat program will be
loaded and this begins the process of installing
your own printer codes.
7. A list of different Printers will be
presented.
8. Use the Down Arrow key to highlight
9. Use the Right Arrow Rey to erase OTHER
and then type in the name of your printer.
10. Use the F2 Key to EDIT.
ll. ‘The printerdat set-up will be
displayed.
12. Use the down arrow key to elect each of
the following lines to edit. As each line is
highlighted, use the right arrow key to erase
the line (if needed). Then type in the new
line.
a. PORT: Make this the Serial Port that you
use for your printer.
b. BAUD RATE: Should be 9600.
c. PARITY: None.
d. LINES: 66 +
e. CHRS/LINE: 80 for Pica, 96 for Elite, or
larger for other smaller styles of print that
you want THIS Printer_Dat program to control.
£. CONTINUOUS FORMS: YES.
g. END OF LINE: CR,LF (carriage return and
line feed).
Now we will begin to set in your SPECIAL
PRINTER to SET your desired functions.
h. PREAMBLE: This sets the printer when
“print is elected with Quill or one of the
other PSION softwares. 1 chose to set the
following (command codes for KXP-1124)
27,120,1,27,107,2 (This sets LETTER QUALITY
and then Courier Font, and then ELITE STYLE).
Refer to step "e" above. For this ELITE
style the CHRS/LINE setting is 96.
i. POSTAMBLE: Here we want to assure that
when PRINTING has been done, the FORM is fed up
to the start of the next form. Insert:
FF,CR (Form Feed and Carriage Return)
j. BOLD ON: ‘The Printer Codes for the Type
14
Style that you want the F4 Key to control:
choice was:
27,119,1,27,69,1 (the first three sets
DOUBLE HIGH. The second three sets EMPHASISE
MODE (double strike).)
k. BOLD OFF: Use the OFF codes for each of
the ON codes used in j above. In my case the
OFF Codes were: 27,119,0,27,70
My
1, UNDERLINE ON: My printer codes used for
Underline ON was: 27,45,1. I decided that if I
wanted to Underline something, I'd also shift
into EMPHASISE MODE, 27,69,1. So the six
commands are entered as: 27,45,1,27,69,1
m. Use the OFF codes for each of the ON
codes in 1 above. (27,45,0,27,70)
n. HIGH SCRIPT ON: I decided to use my
printer's Script font, which is gotten with the
codes: 27,107,4.
o. The off codes for the above is to return
to the Courier font, which is: 27,107,2
p. LOW SCRIPT ON: I decided to use my
printer's ITALIC style and DOUBLE STRIKE, the
conmand codes: 27,52,27,71
q. Of£ Codes for the above are: 27,53,27,72
x. This ends the Printer_Dat set-up, and
none of the other lines were changed.
13. NOW WE NEED TO DO THREE MORE THINGS:
I'LL STEP IT OUT A, B, C.
A. Run the cursor up to the NAME (first
line).
B. Touch F2 to SAVE. Your new Printer_Dat
program will be SAVED to disk or mv,
Cc. Touch F5 to INSTALL. Your PRINTER _DAT
program will be Installed as the one to use when
PRINT is elected by one of the PSION programs.
Then Lets do it again!
WHY? Well, I'll give you sane of my
illogical reasoning. 1 ihe to keep things
veery sunpfe. Instead of putting ina lot of
special key codes, you'll now have ONE disk or
mdy for ELITE STYLE. The F4 Keys are set up to
give you the examples used in this article.
Next, REPEAT the steps given for setting up
another Quill Disk for PICA 80 chrs/line, and
still another for "another style". 1 set up my
third disk for the nice MICRON 120 chrs/line
that my KXP-1124 has. To do these two
additional disks only required changing two
lines, the line for CHRS/LINE and the Preamble
line for the SET-UP UPON BOOT IN.
There are several reasons that I decided to
use separate disks for the three styles. First,
the PSION suite does not let you have different
"DESIGN" for successive printed pages. Then,
the different widths of print (Pica, Elite,
Micron) mixed in printed lines would cause
FORMAT inconsistancies. Even so, there is one
slight problem with this Printer_dat. When
using BOLD, the characters are DOUBLE HIGH. For
the best results BOLD should be used only for
HEADERS, and for printing on the FIRST line of a
separated paragraph. Otherwise when BOLD is
used for more than one line there isn't any
separation between the two lines.
YOU COULD SEP UP LESS SPACING BETWEEN LINES
One could set up other PRINTER_DAT programs
to use CONDENSED PRINT or SUPERSCRIPT for
printing. These styles used for manuscript
printing need shorter spacing between lines.
Since I'm not a Lawyer and do not need to use
“fine print" to hide legalese in contracts, I
really do not need such small printing.
But if you do, you can use the line
to SET the Print style, then superscript, and
THEN, SET the PRINTER LINE SPACING to something
other than 1/8" line spacing, say 1/16" for
superscript, or 5/64" for condensed. Those
settings would give about 120, or 96 lines per
page form, and a whale of a lot of data per
page. Imagine, a print style of MICRON 120
chrs/line, then superscript, then 1/16" line
spacing, 1/16", to give 120 lines per page, to
give over 12000 characters per printed page!
Or, Condensed 160 Chrs/line, superscript, 1/32"
line spacing to give 240 lines per page, to give
40,000 characters per page! (My math could be
off.) Sumary
1. Every user should learn to use the
INSTALL_BAS program to make tailored PRINTER_DAT
set-ups that your printer is capable of
supporting.
2. Once you do a simple new set-up with the
Install_bas program, you'll remember how and you
can always revise the _dat program to do
whatever you want to do with your printer.
3. Each brand of printer has its own best
print styles that should be taken advantage of
with custom Printer_dat set~ups.,
4. While I cannot find much use for setting
up different styles of print that have different
character widths, it can be done. One can
account for inconsistant line lengths of
separated paragraphs, but mixed widths of print
in the same line would be difficult to format.
Also, the DESIGN FUNCTION would not provide
consistant page length with Mixed styles and
different printer line spacing.
5. Asimple approach is to use different
disks/mdvs for Print styles, with all styles on
one disk's printer dat having the same character
width.
6. If you DONT learn to use Install_bas, you
will not | have mich lattitude of style
selections. You will ALWAYS: Print in Draft
Quality, Pica 80 Chr lines, and your F4 Typeface
electives will be for superscript and subscript
styles. These are fixed by the given
Printer_dat program.
learn to use INSTALL_BAS. To do so just
requires a little practice, and coordination
with the printer manual. EnJoY! _fJ-
The following article, by David McCall, is second in a series. The first article was
given in the October 1989 issue. The Program Listing given in this issue can be
linked with that given in the Oct. issue. Or, the individual programs will work
independantly.
WINDOW DEFINING:
A Program, pact ILI
by David McCall
This is the next to last article for the window defining program. The first
one described the machine language routine which was necessary to swap screens.
The second one detailed the variety of functions needed and now the procedures
will be discuss. After this series has been completed you should have a better
understanding of SuperBASIC's functions and procedures and their variety of uses
along with a better understanding of the value of using machine code to supplement
a programs speed and versatility.
As in the previous articles indentation has been used throughout the writing
of these procedures. Most of the procedures are straight forward but different
techniques have been used to illustrate the power and versatility of SuperBASIC
especially when ToolKit II is installed. Most of the procedures use the Toolkit's
additional utilities, PRINT USING and CHAR INC. The procedures can be rewritten to
avoid these routines if it is necessary.
Let's start off by describing the first procedure at line 4000. The procedure
is called done and takes four parameters xZ, yk, lenZ, and valueZ. The procedure
prints the valueZ in a signed field of length, len%, at position xZ,y% and clears
the default value which was printed at xZ+l,y%. This procedure is used after a
value has been typed in to update the screen,
PRINT USING was used to ensure the number lined up properly and stayed within
its allotted space. The PRINT USING function takes a string as its first para-
meter, which describes how the successive parameters will be printed. In our case
the string was made up of a SuperBASIC function FILL$ which creates a string of
character of a desired length. A '‘-' was concatenated before it to ensure there
was room for the sign to be printed. For more information on the above functions
read the Toolkit II manual section 13.1 and the SuperBASIC manual section
KEYWORDS page 23.
The next procedures print_list _maxchr, line 4050, and print_list_max_point
line 4110, displays the maximum number of characters that can be displayed in the
window (max_xc,max_yc) and the maximum point positions (max_xp,max_yp), the
graphics origin (xg,yg), the number of pixels which corresponds to the window
height, and the midway point between the origin and the maximum point position.
Arrows are printed after each value to indicate which direction it refers to. This
has proved useful to clear up the confusion about which direction the x and y
parameters refer to in different commands.
Remember max_xc, max yc, max_xp, and max yp are the functions written in the
previous article. The global variables are:
scl = the SCALE of the window
xg,yg = the graphics origin defined by the SCALE command
scr_x,scr_y = the x and y dimension of the window
brder = the BORDER width
exi,cyi = the number of pixels a character occupies in the x
and y directions
SWAP, swap2 = the machine Language address to swap the command
and defining windows, respectively
xp0, yp0, sx0,sy0 = the position and size of the window being swapped
cbi,cb2,cb3 = the color of the BORDER
cpi,cp2,cp3 = the color of the PAPER
cil,ci2,ci3 = the color of the INK
csw,csh = character size width and height
doit = the flag which indicates what to display in the
defining window after a command
a_or_m = the flag which indicates whether the window is being
moved or altered in size
16
The procedure that does most of the work is recalculate, line 4220. It tak=s
care of erasing the old window, putting the new one back up, and updating th:
appropriate variables. Here we see the first use of the machine language routine
which was loaded into the location pointed to by swap2. As you remember the para-
meters for this routine are save/recall, origin, and size, see line 4230. If the
save/recall position is one the previous screen is recalled which is the first
thing that is done in this procedure. Next it checks to see if the window size is
too big and adjusts if necessary. The new window is opened and set up. Next the
origin and size for our machine language swap routine are recalculated, see part I
of this series and lines 4310 to 4340. The screen is save under our new window and
then the window is displayed.
The next two procedures displays information to the user. The first, results
line 4400, displays all the relevant information about the current window, the
defining window, that is being constructed. The second one, commands Line 4690,
prints a table of the commands that are available. Everything is labelled, placed
and colored to ease in reading. An interesting approach has been used to print
this information. One color of text is printed at a time and each time the ink
color is change the cursor is repositioned at the top and the next mask is
printed. This is accomplished by using OVER 1 and tends to save some memory by not
repeatedly changing the INK color over and over again.
The display procedure, line 4790, is an added visual feature which as proved
useful in creating windows. It fills the current window with 'QL' or puts a hash
at the graphics origin depending on the last command executed. This helps size the
window when you want your characters to exactly fit the window or when you want
the origin ina specific location. By looking at lines 4800 to 4870, we see that
the SELect ON command was used instead of the IF-THEN-ELSE construct. This
decision was made in part to show an alternative to the IF statements and to allow
an easier change in the future if different displays are wanted after other
commands.
Of course the window to display the information, the command window, needs to
be created. This is accomplished in the procedure setup, line 4900. LOCal
variables are used with same name as global ones. This allows us to keep the same
descriptive variable names without changing the global values. The window para-
meters are READ in through DATA lines, line 2 to 5. (NOTE, lines 8-to 13 are the
initial values of the defining window and will be used in the main program.) This
allows easier changes to the window without searching through the entire program
to find where the window was defined. A RESTORE should always be used before
READing any DATA because the line number from where the DATA will start to be READ
is not reinitialed with the RUN command. The text '>> MOVE <<' or '>> ALTER <<’ is
also displayed depending upon the value of aor_m which will be set in the main
Program. Finally, the area of the screen which the command window will occupy is
saved.
Last but not least, a procedure to print the title and author of the program
is included, name line 5120. The extra underlined spaces are used to draw a line
to separate the title from the rest of the command window and umderline the
author's name. In some cases UNDERLining or drawing a BLOCK for a straight line is
faster and easier.
The line numbering used has been constructed to ensure that all the articles
can be merged together without out conflict. In the final article the simple main
program-will be discussed. The functions and procedures presented in this series
is a basis to build and learn from. In some instances a better approach could have
been used but the intent was to show several different ways to attack a problem.
If you don't want to type in the listing an "Issue Disk" will be available.
LISTING A
13 REMark Command window
2 DATA 301,211,0,0: REMark screen - height width, x,y
3. DATA 0,0,0: REMark paper color, contrast, stipple
4 DATA 2,2,0: REMark ink color, contrast ,stipple
5 DATA 2,0,12,10: REMark char size - width,height,x_inc,y_inc
6:
Lis REMark Defining window
8 DATA 100,50,320,128: REMark screen ~ height width, x,y
9 DATA 1,7,7,0: REMark border size, color, contrast,stipple
17
10 DATA 0,0,0: REMark paper color, contrast, stipple
11 DATA 2,2,0: REMark ink color, contrast, stipple
12 DATA 100,0,0: REMark scale, (x,y) graphics origin
13 DATA 2,0,12,10: REMark char size - width,height,x_inc,y inc
14:
4000 DEFine PROCedure done(x%,y%, Len%, value)
4010 INK#3,4
4020 AT#3,xZ,yZ: PRINT USINGE3, '-'@FILLS("#' ,len%) ,value:AT#3, xZ+1,y%
:PRINT#3, FILL$(* Ty lenZt
4030 END DEFine done
4040 :
4050 DEFine PROCedure print_list_max_chr
4060 AT#3,8,13
4070 INK#3,4:PRINT_USING#3, ‘He TY! smax_xc
4080 _AT#3,9,13:PRINT r USINGE3, ©" max_yc
4090 END DEFine print list_max chr
4100 :
4110 DEFine PROCedure print_list_max_point
4120 AT#3,8, 13:
4130 INK#3, 4:PRINT_USING#3,' tt ©! max_xp
4140 AT#3,9,13:PRINT USING#S, '-### ]' ime CYP
4150 AT#3,12,13:PRINT_USING#3, ‘HH ©
4160 AT#3,13,13:PRINT_USING#3, '-HHF Nese
4170 — AT#3,16 12: PRINT#3, scr -2ebrder=1
4180 PRINT. P USING#3, ‘ tt, “HEE. , -(max_xp-xg)/2,-(max_yp-yg)/2
4190 name
4200 END DEFine print_list_max_point
4210 +
4220 DEFine PROCedure recalculate
CALL swap2,1,xp0,yp0,sx0, sy0
iio ese ~ x+Kp>912 THEN scr. x=512-xp
4250 IF’ scr_y+yp2256 THEN scr_y=256-yp
4260 OPENS, ‘scr_'&scr_x8"x'@Scr_y&'a' &xp&' x'&yp
4270 PAPER#4,epljcp2 ,cB3: INK#4,cT1 ,c12,c13 :
4280 SCALE#4)scl, xz, ye
4290 CSIZE#4}esw,csh
4300 CHAR ING #4,cxi,cyi
4310 xpO=INT(xp/8-.5):1F xp0<O THEN xp0=0
4320 sxO=INT(scr_x/8+.5)+221F xp0+sx064 THEN sx0=64-xp0
4330 ypO=yp-LIF yp0<O THEN y
4340 syO-scr_y+l:TF ypOtsy0>S12 THEN sy0=512-yp0
4350 swap2 ,0, xp0, yp0, 5x0, sy0
1360 BORDEREA” brdor cbt sebd,cb3
4370 CLS#4
4380 END DEFine recalculate
4390
4400 DEFine PROCedure results
4410 OVER#3,1
4420 INK#3,4:PRINT#3,'scr_ x a x
4430 PRINT#3," BORDER ‘i
4440 PRINI#3,'. PAPER , y
4450 -PRINT#3,' INK, y
4460 PRINI#3,' SCALE",
4470 PRINTE3,' _— CSIZE ”
4480 PRINT#3, "CHAR_INC
4490 PRINTA3,\\ "plot: max'x’="\T0_6;!max_y ="\\TO 6;'min_x ="\T0 65'miny =
4500 -PRINTE3,\' print: max_x =,"\10_7;'naxy =
4510 PRINTE3.\ "pixel: maxx ='\10 7;!nax y ="
4520 AT#3,0
4530 INK#3,7: PRINT rUSINGES," | BRE Bat HEE BHA’ ,sct_x scr_y,XD,YP
4540 PRINT’ USING#3," ## € # #\' ,brder,cbl ,cb2,cb3
4550 PRINT_USING#3," # # #\' cpl,cp2,cp3
4560 PRINTUSING#3, ' # # #\' cil, ci2,ci3
4570 PRINT_USING#3,' #8 #8 arr scl, xg,yg,
4580 PRINT_USING#3,‘ # #' ,cowycsh
4590 PRINT_USING#3,' # HN cxi,cyi ,
4600 — PRINT_USING#3, '\ “HHH HE HE NN
max_xp,max_yp
4610 PRINT _USING#3, y Ht ON ae NN 8098
4620 PRINT, TUSINGE3, '\ HNN #f ON ,max_xc,max_ye
4630 PRINT, CUSINGES, ‘\ HEN cad ant
ymax_Xpix,ma pix
4640 INK#3,2: UNDERES
4650 AT#3,18,0: PRINTS, ' iF
4660 — OVER#3,0:UNDER#3,0
4670 END DEFine results
4680 :
4690 DEFine PROCedure commands
4700 OVER#3,1
4710 INK#3, a: PRINT#3, ' MIN' a'\t LIN s'iNt EN! P'N BN
oN RAT ANT shyt atyt SN! MINT ORLY TSEC'Y
' RIN ie Esc'
4720 AT#, ; ;
4730 INK#3, le PRINTS," ove'\" lter'\' etter size'\ cale'\
nk'\' aper NI order'\' ommands'\! esults' N
' bsolute position'\' tep move'\' absolute size'\
' tep alter'\' ode'\' moves screen or'\' alters size'\
' _ -redraws screen'\'&!
4740 AT#3,9,0
4750 INK#3, 2:PRINTH3, 'ctrl'\'ctrl'\' alt'\’ alt'\'ctrl WW!
4760 OVER#3,0
4770 END DEFine
4780 :
4790 DEFine PROCedure display
4800 SELect ON doit
4810 ON doit=1
4820 FOR i=1 TO max_xc
4830 PRINT#4 , FILL$('QL" ,max_yc)
4840 END FOR i
4850 ON doit=2
4860 LINE#4, 5,0 TO -5,0:LINE #4,0,-5 TO 0,5
4870 END SELect
4880 END DEFine display
4890 :
4900 DEFine PROCedure setup
4910 Local scr_x,scr_y,xp,yp,cpl ,cp2,cp3,cil ,ci2,ci3,csw,csh,cxi,cyi
4920 RESTORE 4000
4930 READ scr_x,scr_y,xp,yp
4940 READ cpl,cp2,cp3
4950 READ cil,ci2,ci3
4960 READ csw,csh,cxi,cyi
4970 LF ser_x+xp>S12 THEN scr_x=512-xp
4980 IF ser, ~_ytyp>256 THEN scr. 256 ¥P
4990 OPEN#3;'con_‘&scr_x&'x'&scr_yé&'a'&xp&'x'&yp&'_10'
5000 PAPER#3, cpl, cp2,cp3: INK#3,ci1 ,ci2,ci3
5010 CSIZE¥#3,csw,csh
5020 CHAR_INC #3,cxi,cyi
5030 AT#3,0,0
5040 IF aorm THEN
5050 PRINT#3,'>> MOVE << '
5060 ELSE
5070 PRINT#3,'>> ALTER <<"
5080 END IF
5090 CALL SWAP,0,0,0, 38,211
5100 END DEFine setup
S110 :
5120 DEFine PROCedure name
5130” INK#3,4
5140 AT#3, io, 6: PRINT#3, 'Wind_Def'
5150 PRINTS3, "by
5160 INK#3,7
5170 PRINT#3, "David McCall ';
5180 INK#3,4
5190 PRINTS3, *®1989'
5200 INK#3, 2: UNDER#3, 1: QVER#3, 1
5210 AT#3,18,0:PRINT#S,* 5
5220 AT#3, 20,4: PRINT#3,‘ "y
5230 __ UNDER#3,0:0VER#3,0
5240 END DEFine name
EXITS'
A QL SPREADSHEET MATRIX ~— Bob Hartung
rade toe to Pe ved
i
2
‘SHEXPENSE ITEMS: JA FEB MAR APR my
a
St Bus.miles a 8
SHIRS mileage 0588255 =
stage & fees 8 8
19h
2011990 BEGINNING BAL Center constant)
ai
22)TOTAL INCOME
234
‘243CASH ON HAND
251
aera EXPENSES
38s an
After creating and saving a copy of the above Abacus (83)
“matrix for a sinple accounting format, only a few addi-
tional steps are required to adapt it for any similar uses
of your own, It is easier to center the heading in row 1
if it is done last so start at cell AI after booting up
$$. The default cell-width on boot-up is 10, but we will
change this to 8 later on so most printers will do
144-colunn printouts of the full spreadsheet in one pass.
Text entries are made by Keying * as the very first
character. Text entries made to one cell may span two
cells as long as the second cell is enpty. The closing 8
is supplied by $5 when ENTER is Keyed. To avoid confusion,
if you miss entering the opening * it is best to key SC
and start over. Enter the monthly headings across row 3,
and all the other labels. Jf the left-nost labels in
column A all fill the A cells they will retain a uniform
Teft margin when a right-justify is used for text. Do not
enter the ------ lines nor the formulas just yet as
printed out in the example or indicated by two -- dashes.
When you have completed all the labeling with ENDING
BALANCE as cell A28, continue adding empty cells by en-
tering a single " in column A for as many expense and
income catagories as you intend to add, plus a few extras
for any you may want to add later. The reason for this is
that when additional rows are inserted anywhere above the
final row in the matrix, anything in the last lines is
overwritten, so nothing is lost if these are null cells,
Change the cell-width by Keying F3, 6 for Grid, W for
Width, 8 for the new column width, FROM A TO 0. Set text
to right-Justify by Keying BB, for Justify, Key ENTER to
change CELLS, ENTER for TEXT, R for Right, and range
3:028. Enter whatever heading you want to use in row 1.
We are ready now to start plugging in formulas and
numbers. Hove the cursor to C5 and enter @ (zero). No
opening quote * is used for nuneric or formula entries. To
repeat this across row 5 the ECHO command is used by
Keying F3, E for Echo, ENTER (for the cell on which the
tT Wie eee See a
1990 FINANCIAL REPORT
Nor N ¢ 0 ¢
ANHUAL
DEC TOTALS
wu AUG: SEP oT NO
4 8 4 sun(C5:NS)
8 8
6 a
4 @ sum(C14:N14)
a H oes
4 ‘an
cursor is resting), range C5:N3. Do this for rows 7, 8,
14, 15, 14. After entering as text in cells CP and
C17, use ECHO to repeat in ranges C9309 and C17:017,
respectively. I you will have S-digit figures in the O
column, you may want to use 8 dashes there for neatness.
Enter the formula as given in cell Cé and ECHO this in
range C6:N6. Enter the formula as given in C18 and ECHO
this in range C18:Ni0. Enter the formula as given in C18
and ECHO this in range C18:N18. Enter the fornula as given
in 05 and ECHO this in range 05:08, Enter the fornula as
given in 014 and ECHO this in range 014:016. In cell 018
enter sum(Ci@:Ni8), in cell O18 enter sum<Ci8: NI8), in
cell C28 enter @ of a beginning balance, in cell C22 enter
018, in cell 23 enter in cell 24 enter (28422
in cell 26 enter 018, in cell C27 enter "------~, in cell
028 enter C24-C26. CELL formats persist till changed.
Change all numbers to right-justify by keying F3, J for
Justify, D to change defaults, N for numbers, R for Right.
If any cells need to be moved right: after new entries,
this may be done by the CELL mode of the Justify sequence,
then specifying the range or just a single cell, eg: C8.
To create a two-place decimal format for aligning all
nonetary figures, key F3, U for Units, D for Default, -D
for Decimal, and two for number of places. For better
clarity, any single cell or range of cells such as ni leage
may initially be set to a single @ with CELL and GENERAL,
then reset to two-place decimals as entries are made, For
a window display, with cursor at Ci key F3, W, V, ENTER.
With this matrix as given, a narrow carriage Cletter-
width) printer that has a condensed font of 17 c.p.i. will
print the entire spreadsheet in one pass if the colunn-
width is set to 144 by using the DESIGN command. If your
printer will not do 144 characters per Tine or you wish to
do printouts in a larger font, then the spreadsheet may be
done in two or more segnents, eg: Key F3, P for Print,
ENTER for display, N for gid only, range Al:J28 for the
first segnent, then repeat, using K1:028 as the range.
The natrix we now have may be saved and used as the
foundation for any spreadsheets that use this type format.
To insert more rows into it, with the cursor, on the row
following the: position where new rows are to be added, key
F3, 6 for Grid, I for Insert, ENTER (or row number), and
the number of rows to be inserted. ECHO any values or
formulas as necessary. ‘Any existing fornulas are adjusted
when rows are re-nunbered by using Insert. Add nll x
rows to the bottom of the matrix if necessary.
20
15-2068 BUSINESS SOFTWARE
ARL-9.B1l
By: Jim Bretz, Pernam, MN.
Manages Customer Charge Accounts
Posts new sales
Computes interest charges
Posts payments to accounts
Suns accounts balances
Prints out Reports
Prints out invoices
This comprehensive software proves that the
TS-2068 is a mighty fine computer for running
a business. The equilivant of this program in
use thri the World costs hundreds of
dollars. Jim Bretz designed and uses this
ARI-9 software to rum his large Hardware
business. Jim has versions of the software
for both LKDOS and SPDOS (Millenia K DOs).
The version given here is for LKDOS and the
V-3 LKDOS Printer Driver in EPROM. However,
any printer driver that supports TAB can be
used. Also, the software requires the 64
colum screen to be enabled. This can be via
use of TASWIDE or the Zebra 05-64 Cartridge.
I£ you are using LKDOS then TASWIDE would be
appropriate. Incidentally if you dont have
TASWIDE, which works great with LKDOS, you
should spend a few bucks to get it (RMG
Enterprises is a good source.).
If you are using a DOS other than LKDOS (or
Cassette), then as you key in the program just
substitute the LOAD and SAVE commands for the
storage medium that you use. E
The Software programming is doe entirely
in BASIC which makes the operation very user
friendly and adaptable for customizing to your
special needs. In fact, it is so user
friendly that only a few tips to get started
need to be discussed. The Main Menu is given
below:
ACCTS REC. Main Menu
1. ENTER NEW FILE
2. VIEW FILE
3. POST SLIPS”
4, COPY TO PAPER
5. REPORTS
6. NEW HEADER/CLOSING
7. EDIT LINE
8. CLOSE FILE/END DAY
9. SAVE DATA (BACK UP)
Key in the whole program and SAVE with a
starting line of 9500. ( SAVE "ARI-9.B1" LINE
9500 ). Next SAVE a couple of dumny account
files that will be needed. ( DIM
a$(20,5,21): SAVE "01001a.A$"DATA a$() ).
And: ( DIM d$(20,24,20): SAVE "01001d.a$"
DATA dS() ). c
These two character arrays saved to disk
will become dumy files for the program to
sense a need to establish new files.
The Auto Load program
After Saving the main program and the two
dummy files, key in the LKDOS Autostart
program, This Autostart program may need
slight changes to initialize your ow CPI
interface with POKES to the LKDOS. Lines 30
and 40 assumes that you have SAVED the taswid
Code via <SAVE "taswid.cl"” CODE 63223,1492 >
to the same disk as you saved the main
Program. Key in the Autostart program with
your needed changes and Auto SAVE it by: <
GOTO 60 >. Line 60 lowers RAM TOP to 300
bytes above the program length to conserve
disk space. Then the Autostart Program itself
will restore FREE Memory as it loads in (line
#5) and sets RAM TOP to account for the taswid
code load.
‘SOME MAIN PROGRAM TIPS
When the main program loads (via the
Autostart program) it begins running at line
#9500. Line #9530 prompts for input of DATE.
The date must be SIX numbers as: 010190, which
would represent the date of Janurary 1, 1990.
Then Line #9560 loads in the first account.
In this case it is the dumy account that you
saved with the name "01001a.AS". Then line
#9565 loads in the second part of the account
which you saved with the name "01001d.A$".
Then when these two files (dummys) are
loaded, the Main Menu is presented.
Select <l> ENTER NEW FILE. Now here is a
little quirk. The file number that you enter
must be 7 characters in length and must
conform closely to the dummy file name, which
is only 6 characters in length. Files must
begin with the first two digits "01" and the
last two digits "la" through "lz". EXAMPLE:
O10001£ would be accepted, but 020002a would
not. A close examination of the program lines
beginning.at line #410 will be helpful to
understand the composition of the “account
number" requirements.
Enter several new accounts and input dummy
figures for sales by category. Then use the
main menu to recall these accounts. After a
bit of practice the organization scheme of the
accounts will became familiar.
Since this is such a comprehensive software
and does so many functions, there will bea
feed back to answer the users questions. If
you should have problems, send your questions
to Update Magazine and they will be forwarded
to Jim Bretz for his answers. Please include
two Stamped envelopes, one a SASE. But lets
not call Jim for problem answers as he is a
business man who goes to work every day and
needs his sleep.
This Business software is available as an
Issue disk, ready to use for LKDOS.
21
VARIABLES:
Am---Val DS(x,Z,13 to 20)
Amt--amount total Debit
Bal--Amount runing Balance
Amount total Credit
nput for description
Des--Description, Val DS(x,
Int--amount total Interest
-Length of S$
-Line posistion, PEEK 23689 (SPOSN)
Lb---Used in Loi
Lbi--Over due Balance
P. or/Next loop counter
or/Next loop counter, printer
ised to justify R$ and S$
-Terms flag
Tbal-Gross total Balance,
Tlbl-Gross Over due Balance
Tmi--Total months Interest added
Tint-Gross total Interest
X----account number, Val X$(6 to 7)
Z----For/Next loop counter
menu
z.11 to 12)
1 REM Accounts Rec. T/S 2068 1986 Jim
Bretz
304 PRINT CHRS 2
305 PRINT AT 1,03X$°AS(X,1)°AS(X,2)°AS(X.3)’AS(X.4,
1 TO 14)s" “sA8(X,5,1 TO 2)s".*5A8(X,5,3 TO 7)
307 IF AS(X,1,1 TO 4)=* “ THEN PRINT “FILE NOT
UND": PAUSE o: GO TO j5
309 RANDOMIZE USR 64300: PRINT CHRS 3
ae PRINT AT 1,483 "Sheet: ";AS(x,5,12 TO 13):AT 2,49
$(X,5,8 TO 9)5*/*5AS(X,5,10 TO 11);AT 3,49
"5 985AT 4,48; "Terms: “sTS(VAL A8(X,5,14))
320 PRINT AT 7-(z=16),03"No! Date! Slip !Descriptio
n {Credit !Interest! Amount ! Balance *
349 RETURN
352 LET s=VAL 08(x,z,13 TO 20)
384 LET k=9
355 LET r$=STR$ s: LET I=LEN rs
360 IF L(2 THEN LET RS="0°+R$: LET L=2
365 DIM s$(k): LET s8(k-2)="."s LET s8(k-1 TO k)=rs
(1-1 To 1): LET s$(k-1t{( kel) TO k-3)=r$(1 TO 1-2): R
ETURN
400 REM leagel acct sub
410 INPUT ‘ACCT. NO.°:Y$: IF LEN Y$Q)7 THEN GO TO
502
AIS POKE 23658,0: LET x$=V$: LET X=VAL X8(6 TO 7):
IF x)20 THEN GO TO 502
420 IF X$(1 TO 2)<)CS(1 TO 2) THEN PRINT “PLEASE I
NSERT DISC NO. "sX$(1 TO 2)**AND TRY AGAIN.*: PAUSE
0: GO TO 500
425 IF VAL x$(3 TO 5))48 THEN GO TO 502
430 IF X$(3 TG.5)<)C8(3 TO. 5) THEN G0 TO 450
440 RETURN
450 RANDOMIZE USR 100: SAVE c$+"a.AS* DATA as{ )
452 RANDOMIZE USR 100: SAVE c$+*d.As* DATA d8{ )
453 IF z$)°7" THEN RETURN
454 RANDOMIZE USR 100: LOAD XS(1 TO 5)+'a.As" DATA
aa)
456 RANDOMIZE USR 100: LOAD X$(1 TO S)+'d.As" DATA
ds()
458 LET cS=x8(1 TO 5)
499 RETURN
501 GO TO 505
S02 BEEP .1,1: BEEP 1,.1
$05 BEEP .1,1: BEEP .1,5: BEEP .1,9
$10 CLS : PRINT “ACCTS REC. MAIN MENU: “SAT 2,55 "1
ENTER NEW FILE*,TAB 53°2. VIEW FILE", TAB 53°3. POST
SLIPS*,TAB 5; °4, COPY TO PAPER ,TAB . REPORTS* ,T
°7, EDIT LINE",TA
‘9. SAVE DATA (Bac
AB 53 °6. NEW HEADER/CLOSING® TAB 53
8 55°. CLOSE FILE/END DAY',TAB 5;
k-Up)* :
520 INPUT Z$: IF CODE 2$)48 AND CODE Z$(5@ THEN : C
$ + GO TO VAL Z8#1000
530 G0 TO 56
549 CLEAR : RANDOMIZE USR 100: SAVE ‘ARI~9.81* LINE
9800
1000 CLS : FLASH 1: PRINT AT 0,93 “ENTER NEW FILE"’?:
FLASH 0 GO SUB j4
1010 LET X=VAL x8(6 TO 7)
1020 IF CODE AS(X,1)<)32 THEN GO TO 1900
1025 INPUT "ACCT. NAME "5AS(X,1): PRINT A8(X,1)
1030 INPUT "St. ADDRESS*3AS(X,2): PRINT AS(X,2)
1032 INPUT "RR or BOX";AS(X,3): PRINT AS(X,3)
1035 INPUT “CITY*3AS(X,4): PRINT AS(X,4)
1040 INPUT "STATE, & ZIP*3AS(X,5,1 TO 7): PRINT As(X
15,1 TO 7)
1050 POKE cap,8: II
*1S THIS CORRECT
i
F Y$<)"Y* THEN CLS = PRINT "ACCT NO. ‘:X: POKE cap,
0: GO TO 1025
1110 CLS = PRINT "TERMS MENU: PRINT AT 2,53"1. "5T
${(1)°TAB 55°2. °378(2)'TAB 5
318(4)'TAB 55 °5. *iTS(5)
1120 INPUT AS(X,5,14): IF CODE AS(X,5,14))48 AND COD
E AS(X,5,14)(54 THEN G0 TO 1130
1125 BEEP .1,1: BEEP 1,.
1130 LET AS(x,5,12 TO 13
1140 CLS : INPUT “Date of LSmt.',A$(X,5,8 TO 11): PR
INT “Loa 6(x,5,8 TO 9)s*/75A8(x,5,10 TO 11): L
ET 08(X,1,1 TO 4)=48(X,5,8 TO 11)
1145 LET 08(x,1,5 10 10}=" 00°:
2 1"
1150 INPUT “Enter beginning Balance'sY$: LET D$(x,1,
13 TO 20)=Y$: IF LEN Y8(1 THEN GO TO 1150
1151 FOR z=1 TO LEN Y$: IF CODE Y$(z))57 THEN G0 TO
1150
1152 IF CODE y#(z)(48 THEN GO TO 1150
1153 NEXT 2
1155 INPUT “Enter OVER OUE Balance”iy$: LET a$(x,5,1
5 TO 21)=y$: IF LEN y$(1 THEN GO TO 1155
1156 FOR z=1 TO LEN y$: IF CODE y$(z))57 THEN GO TO
1155
1157 IF CODE y$(z){48 THEN GO TO 1155
1158 NEXT z
1189 LET Z=1: GO SUB ji: LET amt=s: PRINT ‘Balance F
“js: IF $(=0 THEN LET 08(x,1,11}="0": G0 TO 12
LET D8(x,1,11 TO 1
50
1160 IF S)O THEN LET DS(x,1,11)="1": INPUT ‘Enter b
eginning Interest*;Y$: LET 08(x,1,5 TO 10)=Y$: IF LE
N y$(1 THEN GO TO 1160
1161 FOR z=1 TO LEN y$: IF CODE y8(z))57 THEN GO TO
1160
1162 IF CODE y$(z)<48 THEN GO TO 1160
1163 NEXT z
1164 LET z=1: LET s=VAL D$(x,1,5 TO 10): LET k=7: GO
SUB j3: PRINT ‘Interest charge’;s$
1170 LET s=stamt: GO SUB j2: PRINT "Total Due:
$
1250 PRINT AT 21,03 ‘Press Any Key for MENU*’*Press °
*c** to Enter a new Acct." POKE cap,o
1260 IF INKEY$="* THEN GO TO 1260
1265 IF INKEY$="c* THEN 60 TO 1000
1275 60 TO j5
22
1900 PRINT "THIS ACCT *3A8(X,1)?*IS IN USE,*’* DO
YOU WISH TO DELETE ? Y/N": INPUT Y$: IF Y$<)"Y" TH
—N G0 TO 1270
1904 PRINT : PRINT "This File 2 "3A8(X,1)3",(Y/N)*
: INPUT Y$: IF Y$="¥* THEN LET AS(X,1,1 TO 4)="
": FOR Z=1 TO 24: LET 08(X,Z)="": NEXT Z: GO TO
505
1906 GO TO j6
2010 CLS : FLASH 1: PRINT AT 0,12;"VIEW FILE": FLA
SH o
2015 GO SUB 3015
2505 POKE cap,8: PAUSE o: IF INKEY$="R" THEN LET
2=1: CLS = GO TO 3030
2510 GO TO 2000
2950 PAUSE o: GO 70 2000
3010 CLS : FLASH 1: PRINT AT 0,10; "POST SLIPS*: FL
ASH o
3015 LET Z=1
3020 GO SUB j4
3030 GO SUB jo
3045 POKE cap,8: INPUT “Correcrt File Y/N";Y$
3048 IF Y$="Y" THEN GO TO 3050
3049 GO TO j6
3110 PRINT AT 8,z5Z;TAB 3508(x,z,z TO 2);
2,3 TO 4); TAB 16; "Balance For .*3
3120 IF VAL 08(x,z,13 TO 20){0 THEN GO SUB ji: PR
INT AT 8,27;S$;TAB 5538$: LET amt=0: LET bal=s: LE
T crt=ABS s: LET int=0: LET in=int: GO TO 3200
3130 LET s=VAL 0$(x,z,5 TO 10): LET GO SUB j3
+ PRINT AT 8,383s$: LET in ET inzint
3134 60 SUB jl: PRINT AT 8,45;s$;TAB 55;s$: LET am
t=s: LET bal=s: LET crt=0
3202 FOR 27=2 10 24
3205 IF z=16 THEN INPUT “scroll?"sY$: PRINT AT 0,
03! FOR h=1 TO 10: RANDOMIZE USR 2361: NEXT h: FOR
TO 7: PRINT *
*308(x,
“: NEXT h GO SUB
JO: PRINT AT In-9,03
3210 IF D8(x,z,1)=" " THEN GO TO 3300
3215 LET des=VAL D8(x,z,11 TO 12)
3220 PRINT TAB 1-(z)9);zsTAB 3308(x,z,1 TO 2)3°/"5
08(x,z,3 TO 4); TAB 9508(x,z,5 TO 10);TAB 16;1$( des
Jit LET In=24-PEEK 23689
3225 IF des(8 THEN GO SUB ji: PRINT TAB 45:s$
ET amt=amt+s: LET bal=bal+s: LET s=bal: GO SUB j
PRINT TAB 55;s$: NEXT z: GO TO 3400
3230 IF des<10 THEN LET am=VAL D8(x,. 2,13 TO 20):
GO SUB ji: PRINT AT 1n,273s85: LET s=in: LET k
GO SUB j3: PRINT TAB 38;s$;: LET s=(am-s)+( am-s)=0
): LET in=(in-am )x(in-am)=0): GO SUB j2: PRINT AT
1n,453s$3: LET s=bal-s: GO SUB j3: PRINT TAB 55;s$
3: LET bal=s: LET ert=crttam: NEXT z: GO TO 3400
3250 GO SUB jl: PRINT TAB 36;s$;: LET in=ints: LET
int=int+s: LET s=bal: GO SUB j2: PRINT TAB 583s;
= NEXT z: GO TO 3400
3300 IF z$="2" THEN GO TO 3400
3301 INPUT "Enter Slip No.*sD$(X,Z,5 TO 10): IF D$
(X,Z,5 TO 10)=" “ THEN GO TO 3400
3308 LET D8(X,Z,1 10 4)=8s
3310 ON ERR GO TO 3310: INPUT * Enter Sale Code’’
“(press *"0"* for Help )*;0
3312 FOR y=1 TO 10 STEP 2
3313 IF (D(=10)#(D)0)=1 THEN LET 08(X,Z,11 TO 12)
=STR$ 0: ON ERR at GO TO 3320
3316 INPUT i(y)s*."3(1S8(y)),( ytd )s”."s(18(y#t) 30
3317 NEXT y: GO 10 3310
et INPUT "Enter $ Amount";¥$: LET D$(X,Z,13 TO 2
O}Ys
3330 IF (LEN Y$)1)*(LEN Y$<9)=0 THEN GO TO 3320
3335 FOR y=1 TO LEN Y$
3340 IF (CODE Y8(y)<(58)¥( CODE Y8(y))44)=0 THEN GO
TO 3320
3345 NEXT y: GO TO 3215
3410 PRINT "TAB 18;"Totals"s: LET In=24-PEEK 23689
3415 LET s=crt: GO SUB j3: PRINT TAB 27383
3420 LET s=int: GO SUB j3: PRINT AT 1n,36;s8;
3425 LET s=amt: GO SUB j3: PRINT AT 1n,45is$;
3430 LET s=crt-int: LET s=amt-s: GO SUB j3: PRINT
TAB 553885
3440 LET D8(x,1,11)="1":
1,11)="0°
3450 IF z)24 THEN FLASH 1: PRINT ‘FULL PAGE, PLEA
SE COPY TO PAPER ANO CLEAR WORK SHEET": FLASH
0: PAUSE 0: GO TO j5
3500 IF z8="2" THEN GO TO 2500
3950 PAUSE 0: GO TO 3000
4004 GO TO 4500
4005 LET Z=1
4010 GO SUB ja
4015 IF 1$="2" THEN : IF
14)=*5*))0 THEN RETURN
4016 IF A8(x,1,1 TO 4)="
4020 LPRINT °
4021 LPRINT hS(1)
4022 LPRINT hS{2)
4023 LPRINT hs(3)
4024 LPRINT hs(4)
4025 LPRINT
4030 LET ch=93: LPRINT ''''??TAB 103X$’TAB 10;A8(X
s1)’TAB 105AS(X,2)°TAB 10348(X,3)TAB 105A8(X 4,1
TO 14)3", "3AS(X,5,1 TO 2);"."3A8(X,5,3 TO 7)?
4035 LPRINT "Sheet: ";A8(x,5,12 TO 13),"LSmt:"sA8(X
y5,8 TO 9) */*5A8(X,5,10 TO 11), *Date:";88(1 TO 2)
5"/*;B8(3 TO 4); °/"3B8(5 TO 6),"Terns:";TS( VAL As(
X,5,14))
4040 FOR y=0 TO 66: LPRINT "_"s: NEXT y: LPRINT
4045 LPRINT CHRS 91; "No.* Datex Slip *Description
xCredit *Interest* Amount * Balance *;CHR$ ch
4050 REM
4102 IF A8(x,5,15 TO 21)=*
5,15)=*0*
IF bal<=0 THEN LET D8(x,
(D8(x,1,11)="0* )+(a$(x,5,
"THEN RETURN
" THEN LET AS(x,
=VAL AS(x,5,15 TO 21)
+ LPRINT CHRS 9157 1
4110 LPRINT TAB 53D$(x,z,z TO 2);
)sTAB 185 "Balance For .';
4120 IF VAL D8(x,z,13 TO 20)(O THEN GO SUB ji: LP
RINT TAB 295S$5TAB 57;S8;CHR$ 93: LET amt=0: LET b
al=s: LET crt=ABS s: LET int=O: LET in=int: GO TO
4200
4130 LET s=VAL D8(x,z,5 TO 10): LET k=7: GO SUB j3
= LPRINT TAB 403s$;: LET int=s: LET nit
4134 LET k=9: GO SUB jl: LPRINT TAB 47;s$;TAB 57:5
SiCHR$ 93: LET amt=s: LET bal=s: LET crt=0
4202 FOR z=2 TO 24
4204 LET FS=STRS (VAL b8(1 TO 2)+(VAL d8(x,z-1,1 T
0 2))VAL bs(1 TO 2))#12)
4206 IF VAL f$-VAL d&(x,z-1,1 TO 2)>=VAL a$(x,5,14
) THEN LET lbl=bal: LET a$(x,5,15 TO 21)=STR$ Ibl
"/*3D8(x,Z,3 TO 4
4210 IF 08(x,z,1)=" " THEN GO TO 4400
4215 LET des=VAL D&(x,z,11 TO 12)
4220 LPRINT CHR$ 91;TAB 2-(2)9);z;TAB 5:08(x,z,1 T
0 2)5*/"5D8(x,z,3 TO 4);TAB 11;D$(x,z,5 TO 10); TAB
183 18(des)i
23
4225 IF des(8 THEN GO SUB jl: LPRINT TAB 47;s$;: LE
T amt=amt+s: LET bal=balts: LET s=bal: GO SUB j2: LP
RINT TAB 573S$;CHR$ ch? GO SUB 4960: NEXT z: GO TO 4
400
4230 IF des<10 THEN LET am=VAL D8(x,z,13 10 20): GO
SUB ji: LPRINT TAB 29;s$3: LET s=in: LET k=7: GO SU
3 ) Ler
al-s: GO SUB j3: LPRINT TAB 573S$3CHRS ch:
: LET ertscrttam: GO SUB 4950: NEXT z: GO T
0 4400
4250 GO SUB ji: LPRINT TAB 383583:
int=int+ts: LET s=bal: GO SUB j2: LPRINT TAB 57is$;CH
R$ ch: GO SUB 4960: NEXT z
4410 LPRINT *TAB 20; "Totals";
LET in=ints: LET
4415 LET sscrt: GO SUB j
4420 LET s=int: GO SUB j3: LPRINT TAB 38;s$5
4425 LET s=amt: GO SUB j- PRINT TAB 47;s$3
4430 LET s=crt-int: LET s=amt-s: GO SUB j3: LPRINT T
AB 57is$ .
4432 IF lbl(O THEN LET Ibl=0
4433 LET s=lbl: GO SUB j3: LPRINT "OVER DUE Balance
of "ss
4434 RANDOMIZE USR 100: POKE 16090,63: LPRINT ‘V$’":
RANDOMIZE USR 100: POKE 16090,79
4436 IF VAL 1$(3 THEN LET A8(x,5,8 TO 11)=88
4438 FOR m=(z+31) TO 64: LPRINT : NEXT m
4460 RETURN
4500 REM
4501 POKE cap,o: CLS : FLASH 1: PRINT AT 0,93 "LPRINT
FILE": FLASH o
4505 LET lbl=0
4510 PRINT AT 3,0;°OPTIONS:°7'°1. Print (1) statemen
t "'"2. Print Block of statements*’*3. Print (1) F
ile Copy’’"4. COPY and CLEAR Page”
4520 INPUT "Enter Option";1$: IF LEN 1$<)1 THEN GO
TO j5
4525 IF (CODE 1$)48)x(CODE 1$(53)<)1 THEN GO TO 452
Qo
PRINT TAB 293885
4530 PRINT ’**Option Selected No.*s1$
GO SUB 4005: GO TO 4500
GO TO 4600
LPRINT 722777*:
4550 IF 1$="3" THEN
uB 4030: GO TO 4500
4555 IF 1$="4* THEN LPRINT *'’’”
8 4030: PRINT ’"New Paper Please AUSE 0: GO SUB 4
018: FOR z=1 TO 24: LET DS(x,z)="*: NEXT zi LET 08(x
jl,1 TO 4)=B8(1 TO 4): LET D8(x,1,5 TO 10)=STRS ins
LET D9(x,1,13 TO 20)=sTRS bal: LET AS(x,5,12 TO 13)=
STRS (VAL AS(x,5,12 TO 13}+1)
4556 LET a8(x,5,15 10 21)-STRS IbL
4858 LPRINT
4560 GO TO 4500
4610 INPUT “Starting Acct. No.
N GO TO J6
4620 GO SUB 420
4625 FOR x=1 TO 20: LET x$(6 TO 7)=*0*#STRS x: IF 0
9 THEN LET x8(6 TO 7)=STRS x
4630 GO SUB 4015: LET AS(x,5,15 TO 21)=STRS Ib1: NEX
T x: PRINT "Block No.";x$(1 TO 5)s* Complete": PAUSE
0: GO TO 4500
4950 LET Ibl=lbl-am
4960 LET 1b=2-(a8(x,5,14)="1"): LET Ib=VAL 88(1 TO 2
}-lb: IF Ib)=VAL 08(x,z,1 TO 2) THEN LET Ibl=bal: L
ET AS(x,5,15 TO 21)=STRS IbL
GO SUB j4: GOS
GO SUB j4: GO SU
"5X$: IF LEN X$()7 THE
4961 RETURN
5000 GO TO 5500
$016 LET int=0: LET bal=0: LET lbl=0: LET z=1
S019 IF (1$=*1")x(n8="n* )e(d6(x,1,11)=*0"}=1 THEN R
ETURN :
5020 IF AS(x,1,1 TO 4)=" * THEN RETURN
5030 LET Ibl=VAL Ag(x,5,15 TO 21)
5120 IF VAL 08(x,z,13 T0 20)(O THEN LET s=VAL D(x,
z,13 TO 20): LET amt=0: LET bass: LET crt=s: LET in
t=0: LET insint: GO TO 5200
$130 LET s=VAL 08(x,z,5 TO 10): LET intes: LET in=in
t
$134 LET s=VAL D8(x,z,13 TO 20): LET amt=s: LET bal=
? LET crt=0
5202 FOR 2=2 TO 24
5204 LET f$=STRS (VAL bS(1 TO 2)+(VAL d$(x,z-1,1 TO
2))VAL bS(1 TO 2))#12)
5206 IF VAL f$-VAL d8(x,z-1,1 TO 2))=VAL a8(x,5,14)
THEN LET Ibl=bal: LET a$(x,5,15 TO 21)=STR$ lbl
5210 IF O8(x,z,L)=" " THEN GO TO 5400
5215 LET des=VAL D$(x,z,11 10 12)
5225 IF des(8 THEN LET s=VAL D8(x,z,13 TO 20): LET
amt=amt+s: LET bal=balts: LET s=bal: GO SUB 5960: NE
XT z: GO TO 5400
5230 IF des(10 THEN LET am=VAL D8(x,z,13 TO 20): LE
T sein: LET s=(am-s)#(am-s)=0): LET in=( in-an)a( in-a
)=0): LET sebal-s: LET bal=s: LET crt=crttam: GO SU
B 5950: NEXT z: GO TO 5400
5250 GO SUB jl: LET int=intts: GO SUB 5960: NEXT z
5405 IF 1="2" THEN GO TO 5735
5410 LPRINT x$3" "5a8(x,1)5
rt: GO SUB j3: LPRINT TAB 30;s$;
GO SUB j3: LPRINT TAB 40;s$3
GO SUB j3: LPRINT TAB 50;s$3
5430 LET s=crt-int: LET s=amt-s: GO SUB j3:
AB 60:88;
5432 IF lbl(O THEN LET lbl=0
5433 LET s=lbl: GO SUB j3: LPRINT TAB 70;s$
5460 RETURN
$501 LET K=9: POKE cap,o: CLS :
12;"REPORTS*: FLASH 0
5510 PRINT AT 3,03"0PTIONS:*?’*1.
2.°; "Interest Calc.?°”
5520 INPUT “Enter Option's1$: IF LEN 1$<)1 THEN GO
To J
$525 IF (CODE 1$)48)*(CODE 1$(53)<)1 THEN GO TO 552
LPRINT T
FLASH 1: PRINT AT 0,
LPRINT Summery”’*
9
5520 PRINT ’’*Option Selected No.*31$
5540 IF l¢="1" THEN INPUT “Print $.00 Balance Accts
-(Y/N)*3n$: GO TO 5600
5550 IF 1$="2" THEN GO TO 5700
5601 LET Tint=0: LET Tbal=0: LET Tlbl=0
5605 LPRINT ‘“Summery of Accounts" , "Date
"TAB 173 "NAME"S
THEN LPRINT TAB 343 "Line's:
is’? LORI
GO TO 56
5607 LPRINT TAB 33; "CREDIT";
5608 LPRINT TAB 413 "INTERES)
"BALANCE"; TAB 71; "OVER DUET:
"33 NEXT y? LPRINT
5610 INPUT “Starting Acct. No.
N GO TO jé
5615 GO SUB 420: PRINT ‘Summery of Accounts: *’x$;*
TO "5
24
TAB 53; AMOUNT"; TAB 62
FOR y=0 TO 79: LPRINT
“3x$: IF LEN X$()7 THE
5620 INPUT "Ending Acct. No.";P$: IF LEN P$()7 THE
N GO TO j6
5621 PRINT P$: FOR p=
5): LET x$(4 To 5)=
$(4 TO 5)=STRS p
5623 GO SUB 420
5625 FOR x=1 TO 20: LET x8(6 TO 7)=
x)9 THEN LET x8(6 TO 7)=STRS x
5630 GO SUB 5015
5635 LET Tint=Tint+int: LET Tbal=Tbaltbal: LET T1b
1=Tlbl+lb1
5640 IF INKEY$=" STOP " THEN GO TO 5690
5650 NEXT x: NEXT p
5660 LPRINT ’TAB 17; "TOTALS";
5670 IF 1$="2" THEN GO TO 5800
5692 LET int: GO SUB j3: LPRINT TAB 40;s$3
5694 LET s=Tbal: GO SUB j3: LPRINT TAB 60;s$3
5695 LET s=Tlbl: GO SUB j3: LPRINT TAB 70;3$;
5696 LPRINT
5699 GO TO 5500
5705 LET n$='n": LET TMI=0: INPUT “Enter Annual In
terest Rate*iy$: LET irt=(VAL y$/12)*.01
5720 GO TO 5600
5735 IF lbl<=0 THEN LET Ibl=0: LET int=0: LET bal
RETURN
8736 IF AS(x,5,14)=
LET bal=0: RETURN
5740 LPRINT x85" "ja$(x,1)3TAB 353z5
5745 LET s=int: GO SUB j3: LPRINT TAB 40:s$;
5750 LET s=INT (Iblxirt): GO SUB j3: LPRINT TAB 50
38$3: LET TMI=TMIFINT (Iblxirt )
5755 LET s=crt-int: LET s=amt-s: GO SUB j3: LPRINT
TAB 603885
5760 LET s=lbl: GO SUB j3: LPRINT TAB 70;s$
5770 LET d$(x,z,1 TO 4)=b$: LET d8(x,z,11 10 12)="
10": LET d8(x,z,13 TO 20)=STRS INT (Iblxirt)
5780 RETURN
5800 LET s=TMI: GO SUB j3: LPRINT TAB 50;s$
5810 LPRINT "INTEREST RATE = “sirts" per Mth.*
5899 GO TO 5500
5950 LET lbl=lbl-am
$960 LET Ib=2-(a(x,5,14)="1"): LET Ib=VAL BS(1 TO
2)-lb: IF 1b)=VAL D8(x,z,1 TO 2) THEN LET lbi=ba
1: LET A8(x,5,15 TO )=STR$ lbl
5961 RETURN
6000 CLS : FLASH iz PRINT AT 0,8; "STATEMENT HEADER
"" 1: FLASH o
6005 PRINT ’’"1. Enter HEADER"’"2, Enter CLOSING*’
"OPTION 2": PAUSE 0
6010 IF INKEY$="2" THEN G0 TO 6500
6011 IF INKEYS="1" THEN GO TO 6050
6012 IF INKEY$="" THEN GO TO j5
6013 GO TO 6010
6050 PRINT "Enter Statement Header'’’: INPUT “LOA
0 From Tape? (y/n)"sy$: IF y$="y* THEN LOAD "head
er" DATA hs( )
6065 FOR z=1 10 4: INPUT “Header Line ";STRS zshs(
2): PRINT h$(z): NEXT z
INPUT * SAVE TO Tape? (y/n)"s
THEN SAVE "header" DATA hé()
6099 PAUSE 0: GO TO j5
6510 PRINT "Enter new Statment closing lines*
6520 INPUT VS
6530 PRINT "NEW Statement Closing"’: RANDOMIZE US
R 64300: PRINT CHR$ 3: PRINT V$: PRINT CHR$ 2
6540 PAUSE 0: GO TO j5
AL X$(4 TO 5) TO VAL P$(4 TO
"#STR$ pt IF p)9 THEN LET X
+STRE xt IF
THEN LET Ibl=0: LET int=0:
25
7002 CLS : PRINT ’"Edit File Menu:";TAB 53°21. Chan
ge Name/Address";TAB 5;*2. Change Line Entry”
7004 IF INKEY$="1" THEN GO TO 7500
7006 IF INKEY$="2" THEN G0 TO 7010
7008 GO TO 7004
7010 CLS : PRINT AT 0,263" Edit File *
7020 GO SUB j4
7030 GO SUB jo
7045 POKE cap,8: INPUT “Correcrt File Y/N's¥$
7048 IF Y$="¥" THEN GO TO 7050
7049 GO TO j6
7050 ON ERR GO TO jé: INPUT “enter Line No. to be
changed ON ERR RESET : IF 2)24 THEN GO TO
i6
7055 IF z(2 THEN GO TO 502
7100 LET edit=0
7205 PRINT ’’*Current Line No.";
7210 IF 08(x,z,1)=" " THEN GO TO j6
7218 LET des=VAL DS(x,z,11 TO 12)
7220 PRINT TAB 1-(z)9)3Z5TAB 3;08(x,z,1 TO 2)3°/%5
D$(x,z,2 TO 4); TAB 95D8(x,z,5 TO 10); TAB 16;18(des
Jit LET Ln=24-PEEK 23689
7225 IF des(8 THEN GO SUB jl: PRINT TAB 45;s$;: G
0 TO 7260
7230 IF des(i0 THEN LET am=VAL D$(x,z,13 T0 20):
GO SUB jl: PRINT AT 1n,27;s$3: GO TO 7260
7250 LET GO SUB ji: PRINT TAB 36;s$;
7260 IF edi’ THEN GO TO 7400
7265 LET edit:
7275 PRINT '’*Enter New Line No."
7301 INPUT "Enter Date of slip ";e$: IF e$()"" THE
N = LET D$(x,z,1 TO 4)=e¢
7305 INPUT “Enter Slip No.";e$: IF e$()"* THEN : L
ET D8(X,2,5 10 10)=es
7310 INPUT * Enter Sale Code"’*(press '"O"" for He
lp)"se$: IF e$="* THEN GO TO 7320
7311 ON ERR GO TO 7310: LET D=VAL e$: ON ERR RES
ET
7312 FOR y=1 TO 10 STEP 2
7313 IF (D<=10)s(D)0)=1 THEN LET D8(X,Z,11 TO 12)
®STR$ D: ON ERR RESET : GO TO 7320
7346 INPUT i(y)5*."s(8(y)) Cyt )5*."5(18( y#1))50
7317 NEXT y: GO TO 7310
7320 INPUT “Enter $ Amount';Y$: IF Y$="" THEN GO
TO 7215
7325 LET D$(x,z,13 TO 20)=Y$
7330 IF (LEN Y$)1)*(LEN Y$<9)=0 THEN 60 TO 7320
7335 FOR y=1 TO LEN Y$
7340 IF (CODE YS(y)<58)*( CODE Y$(y))44)=0 THEN GO
TO 7320
7345 NEXT y: GO TO 7215
7400 PAUSE 0: GO TO j5
7510 CLS : PRINT AT 0,103" Edit Nane *
7520 GO SUB j4
7530 GO SUB jO
7540 POKE cap,8: INPUT “Correct File Y/N ‘s¥$
7550 IF Y$()*Y* THEN GO TO jé
7560 LET X=VAL X8(6 TO 7)
7625 INPUT "ACCT. NAME "se$: IF e$<)"* THEN LET A
9(X,1)=es
7626 PRINT AS(X,1)
7630 INPUT "St. ADDRESS
$(X,2)=e$
7631 PRINT A8(X,2)
7632 INPUT “RR or BOX";e$: IF e$()"* THEN LET As(
X,3)-e$
+ IF e$()"* THEN LET A
7632 INPUT "RR or BOX";e$: IF e${)** THEN LET AS{X,
3)=es
7633 PRINT A(X,3)
7638 INPUT *CITY*::
7636 PRINT AS(X,4)
7640 INPUT “STATE, & ZIP*je$: IF e$()*" THEN LET AS
(45,1 TO 8)=es
7641 PRINT AS(X,5,1 T0 8)
7650 POKE cap,8: INPUT “IS THIS CORRECT Y/N 2°sY$: I
3 IF e$()"* THEN LET AS(X,4 =e
F Y$="N" THEN CLS : PRINT “ACCT NO. "3X: POKE cap,o
: GO TO 7610
7660 INPUT “Change TERMS Y/N ? "sy$: IF y$()"Y* THEN
GO TO 7800
7710 CLS = PRINT “TERMS MENU:
$(1)'TAB 55°2. "318(2)'TAB 55
378(4)°TAB 53°5. "3T8(5)
7720 INPUT AS(X,5,14): IF CODE AS(X,5,14))48 AND COD
E A$(X,5,14)(54 THEN G0 TO 7730
7725 BEEP .1,1: BEEP 1,.1: GO TO 7710
7810 GO TO j5
8000 REM close
8010 GO SUB 450
8050 CLEAR : RESTORE : RESET
9000 REM save data
9005 GO suB 450
9010 CLS = FLASH 1: PRINT AT 0,103" SAVE DATA ": FLA
SHO
9015 PRINT ’’*Please have formated DISK Ready*
9020 PRINT '*Place SOURCE disk in DRIVE 2*** DES
TINATION disk in DRIVE 1°*"**Press ENTER when READY*
2 PAUSE 0
9100 FOR z=1 10 48
9110 LET c$="0100"+STRE z: IF 2)9 THEN LET c$="010"
+STR$ Z
9120 RANDOMIZE USR 100: GO TO 1
9125 RANDOMIZE USR 100: LOAD c$+*a.A$* DATA as{ )
9126 RANDOMIZE USR 100: LOAD c$+"d.AS” DATA ds{)
9130 RANDOMIZE USR 100: GO TO 0
a)
GO TO 9500
9135 RANDOMIZE USR 100: SAVE c$t*a.A$” DATA a:
9136 RANDOMIZE USR 100: SAVE c$+"d.As* DATA d3(
9140 NEXT z
9150 GO TO j5
9500 REM
9501 DIM 18(10,11): FOR Z=1 TO 10: READ a$: LET 18(Z
}eaS: NEXT Z
9502 DATA “Merchandise”, “Plumb/Heat’ , “Photo Fi
ppliance", ‘Furniture’, Labor”, "ServiceCall", ‘Credit’
»"Rec.on Acct", "Interest"
9503 DATA "NET 30°,"NET 60°,"NET 90°, "NET 120°, "NONE
9504 DIM T8(5,8): FOR Z=1 TO 5: READ a$: LET T9(Z)=a
$: NEXT Zz
9515 LET x=20: LET CAP=23658: LET j0=300: LET j1=350
? LET j2: + LET j3=355: LET j4=400: LET j5=500: LE
T j6=502: LET o=0
9520 DIM AS(X,5,21): DIM 08(X,24,20)
9525 DIM hs( 4,80)
9530 INPUT "TODAYS DATE ? M/0/Y";8$
9535 IF LEN b$()6 THEN GO TO 9530
9540 LET g$=b$(1 TO 2)+"/"+b$(3 TO 4)+*/*+b3(5 TO 6)
9550 LET C$="01001"
9552 DIM vs 192)
9555 LET ES=* *
26
9858 REN
9560 RANDOMIZE USR 100: LOAD "01001a.A$" DATA as)
9565 RANDOMIZE USR 100: LOAD "01001d.AS* DATA ds()
9875 GO TO j5
9599 STOP
9600 PRINT * STOP this will erase all files": PAUSE
0
9610 DIM AS(20,5,21): DIM 08(20,24,20)
9620 FOR x=1 TO 48
9625 LET x$="0100"HSTRS x
9628 IF x)9 THEN LET x$="010"+STRS x
9630 RANDOMIZE USR 100: SAVE x$t'a.As" DATA as( )
9635 RANDOMIZE USR 100: SAVE x$t'd.AS" DATA d8( )
9640 NEXT x
9650 STOP
The LKDOS Auto Load Program
To Auto SAVE, type: GO T0 60.,Then touch ‘d*.
5 CLEAR VAL "63222°
10 REM LKdos AR loader
20 PAPER NOT PI: BORDER NOT PI: INK VAL "7": CLS
22 LET mi=VAL "100°: PRINT AT VAL "9",NOT PIs "Does.
Printer need Line Feed? (1) Yes (2) No": PAUSE N
OT PI: LET z=NOT (CODE INKEY$-VAL "49"): RANDOMIZE U
SR mi: OPEN #VAL "3","lp*: RANDOMIZE USR mi: POKE VA
Lt *16096",NOT PI: RANDOMIZE USR mi: POKE VAL "16092"
s(z#VAL "10"): CLS + INPUT "Enter Printer’s Max Line
length "3z: RANDOMIZE USR m1: POKE 16090,z: INPUT *
Enter Left Margin*;z: RANDOMIZE USR mi: POKE VAL "16
094°,(Z-VAL 'L" AND z)NOT PI)+(VAL "0" AND z(NOT NOT
PI): PRINT AT VAL “8*,NOT PI; "Turn Printer ON, ENTE
R": PAUSE NOT PI: CLS : LPRINT
30 RANDOMIZE USR mi: LOAD "taswid.Ci"CODE
40 RANDOMIZE USR VAL "64300"
50 RANDOMIZE USR mi: LOAD “AR1-9.B1'
60 LET z=VAL "65367"- FREE +VAL "300": POKE VAL ‘2
3731" ,z/VAL "256": POKE VAL °23730",z-(INT z/VAL "25
6")8VAL '256": RANDOMIZE USR VAL "102": GO TO 5
NOTES:
1. When the min program is keyed in,
SAVE it witha tithe of “ARI-9.B1;
2. This nequines a 64 colum
display file. You wikk need either the
Zebra OS-64 cartridge or the TASWI code
as supplied in the TASWI cassette.
Either of these work with either SPDOS or
LKDOS, but to use the OS-64 with LKDOS
the modification given in the LKDOS
manual (to stack an EPROM) is required.
RRRATRAR RATER RERRRRRRRERER RRR RER RR ARERR EIT
* OTHER USES FOR THE T/S 2068 LARKEN RAMDISK *
RARER RAREAARARARARER RAR ARERR ER RRR EERE
LARRY CRAWPORD 357 REYNOLDS RD
LONDON ONT CANADA N6K 2P8
BACKGROUND
The LARKEN RAMDISK banks are all mapped into the
DOCK bank of the 2668 even though the board is
Plugged into the back expansion slot.
Consequently, it is possible to load any of the
RAMDISK banks with data for a database or
spreadsheet. This means that up to 256K more
information can be handled and increases the
usefulness of the “old workhorse" dramatically.
It is also possible to load a DOCK bank with code
which simulates a BASIC cartridge (AROS) and to
run that code as a BASIC or m/c program, This is
what cartridges do.
LARKEN BANK SHITCHING
First of all, the 2068's RAH is organized into 8
chunks of 8K each, Normally, with Display File 1
in use, the bottom two contain ROH and the next
one the system variables and ROM routines which
are moved to RAH on power-up. These 3 chunks
should not be disturbed.
The LARKEN RAMDISK board uses the top 4 chunks (4
to 7) to make up a bank, A bank is made active by
switching off the HOHE RAM chunks 4 to 7 and
turning on one of the RAMDISK banks. The active
bank is actually treated as a DOCK bank, Thus the
RAMDISK board holds up to 8 DOCK banks which can
be selected from the keyboard,
HOW?
Which chunks are active in HOME and which active
in DOCK is controlled by the Horizontal Select
Register (HSR) located in PORT 244 (F4 hex). The
individual bits which make up the byte in the port
determine in which bank the corresponding chunk
will be active, A sero bit means the chunk is in
HOHE. Since we want to use the top 4 chunks in
DOCK, we will load the HSR with 111109996 binary
(244 decimal). Thus <OUT 244,249> activates the
DOCK bank.
WHICH DOCK BARK?
UARKEN uses PORT 7 to select the one-to be
activated. The second page of the LARKEN RAMDISK
notes gives the code numbers corresponding to the
banks: Bank ABCDRFGH
Code 73516249
Thus <OUT 7,7> will select bank A. Further, LARKEN
uses bit 6 of PORT 7 to control the WRITE-PROTECT
circuitry of the RAHDISK board. Axero in bit 6
puts the bank in the READ-only mode. To be able to
load data into the bank, we must add 1600000
binary (64 decimal) to the bank code number.
Therefore, <OUT 244,249: OUT 7,71> will permit us
to put data into DOCK bank A.
WHAT CAN BE PUT INTO IT?
Strictly code, I use two of the banks to hold
records for a database program. It switches the
banks in or out as needed to add records or to
sort them.
The code, however, can be in the form of an AROS
cartridge and therefore be used to hold a BASIC
Program,
HOW TO SAVE THE RAMDISK BANK
Any data read into the bank would destroy the
existing data. To preserve the RAMDISK, enter the
following: OUT 244,249: OUT 7,7 :RANDOHIZE USR
169: SAVE “RAMDSK.CL” CODE 32768,32768. The
contents of bank A will now be safely on floppy
and we can mess around with the bank as much as ve
want. The DOCK bank, however, is still active and
needs to be turned off.
HOW TO GET BACK TO NORMAL
The commands <OUT 244,98: QUT 7,0> will do the job.
With a sero in the HSR via PORT 244, all bits are
seros and all chunks of RAM will be active in
HOHE, The zero to PORT 7 will turn return to bank
H which has a code of zero. This is the normal
condition for RAMDISK.
BANK H - A SPECIAL CASE
When the computer is turned on or NEWed, it checks
the DOCK to see if an AROS is present. If one is,
it is automatically activated, A simulated AROS
loaded inte this bank will run if the <NEH> key is
pressed, If the power supply is turned off, the
code in the bank will be lost even if the battery
backup is connected. If you want a permanent AROS
in bank sero, install an EPROH containing the
utility in the H bank socket. I have HOT-2 in the
bank and a switch in the line running fron pin 1
of the 74145 to pin 2 of the H RAM chip, Without
the switch, HOT-2 would run every time the
computer was booted.
HOW TO RESTORE THE RAHDISK BANK
<OUT 244,246; OUT 7,71; LOAD "RAHDSK.CL"CODE> will
put the RAMDISK bank A back in the RAM chip. Don't
forget to <OUT 244,9>
27 SIMULATING AH AROS CARTRIDGE
An AROS cartridge must have 8 “overhead” bytes
Starting at 32768 (8996 hex) to give the computer
the information it needs to run the BASIC program,
See page 189 of the Tech Manual,
For our demo we will POKR into bank A the
following bytes: 1,2,8,128,15,1,0,8.
The first 1 indicates that this is a BASIC
“cartridge”.
The 2 signals AROS as opposed to LROS, a Language
cartridge.
The 8 and 128 form the beginning address of the
BASIC program (low byte first). In this case the
BASIC will be at 8#256*128=32776 or 9908 hex.
The 15 (99081111 bin) means that chunks 4 to 7
will be active in the DOCK bank. This is exactly
opposite to the format for the HSR.
The second 1 denotes an Autostart for the program.
The two reros reserve no bytes for m/c variables.
The BASIC program will be loaded as code starting
at 32776,
CREATING AN AROS
1, Save RAMDISK bank A as described earlier and
then key in OUT 244,80
2, Key in 19 CLS: PRINT "OK": STOP
28 OUT 244,240: OUT 7,71
30 RESTORE: POR X= 62768 TO 32775:
READ Y: PORE X,Y: NEXT X
49 DATA 1,2,8,128,15,1,0,0
56 OUT 244,98
SAVE as “test.BL"
4. SAVE as "test.C1"CODE PRER 23635+256%23636, 1000
The peeks simply find the address of the start
of the BASIC program. It is moved up 5@ bytes
if the large printer is active. The 1090 is an
arbitrary number large enough to be sure that
all of the program is saved.
Now <GOTO 28>. This will put the “overhead
bytes” for the AROS in place.
Key in OUT 244,248: LOAD “test.cl"CODE: OUT 244
,§, This will put the BASIC program into the
“cartridge”.
Press <NEW> key. This activates the AROS and
Line 16 of thé program should run.
If you saved a RAMDISK bank earlier, load it
back in.
wo
wo
on
~
RUNNING AN AROS (BASIC IM DOCK)
If DOCK bank n contains an AROS, then <OUT 7,bc:
NEW> will RUN it (be is the LARKEN code for bank
n). It's that simple. S
STORING AN AROS
If the code is to be left in a DOCK bank and
maintained with the battery backup, it should not
be in a bank that was formatted as a RAMDISK bank.
If the bank is in Drive 4, then keep the AROS on
floppy and load it in when you need it.
RUNNING AROS FROM DOCK AND BASIC IN HOME
Programs can exist in both banks and either one
can be RUN. Which one is active depends on the
contents of the aros flag at 23759. A sero at this
address will allow the HOHE bank program to be
run, A128 there activates the DOCK program.
A program in DOCK cannot be listed nor can it be
edited. So if you attempt to enter a line and
can't, you know that you are in DOCK and must
return to HOHE.
Steps to run both:
1. Boot the DOCK program with <OUT 7,bce: NEW>.
This HUST be done first to let the computer
know that an AROS is present.
2. Key in PORE 23759,0 to activate HOHE bank.
3. Load in the BASIC program.
4. POKE 23758 with @ or 128 depending on the bank
wanted and then RUX or GOTO the appropriate
line number,
SUMMING UP
The ability to use the RAMDISK banks for other
purposes expands the usefulness of the 2068
dramatically, Data that could not be handled by
the unexpanded machine can now he dealt with
easily.
Huge BASIC programs can be breken down into
segments, stored in DOCK banks, and called into
action as needed by a short controlling program.
This would leave most of HOME RAH free for the
storage of data.
Expansion of the 2968 makes economic sense too,
removing some of the pressure to move on to a
bigger machine that can't be tinkered with.
What we need now is a mess of programs that
exploit this potential,
Por starters, George Chambers has two of mine. One
is a database and the other a HOHE/DOCK progran
handler, Ask him for them.
Explore and enjoy! Larry C
28
RIERA RR RRR RRR RR IRR RRR RRR ERO
A T/S 2868 UTILITY TO PUT BASIC PROGRAMS INTO THE
LARKEN RAMDISK BANKS
DONATED TO THE PUBLIC DOMAIN BY LARRY CRAWFORD
357 REYNOLDS RD LONDON ONT CANADA N6K 2P8
(519) 657-9119 27 JAN 98
RRRARRARRARRARAARRARR RAE RRERER ARERR RAR RA RRR RE RRR
BACKGROUKD
The LARKEN RAMDISK banks are all mapped into the
DOCK bank of the 2868 even though the board is
plugged into the back expansion slot.
Consequently, it is possible to load any of- the
RAKDISK banks with code which simulates a BASIC
cartridge (an AROS) and to run that code as a
BASIC program. This suite of programs will allow
you to create your own simulated cartridges in the
RAMDISK memory chips. A program running from DOCK
leaves the HOME bank free to hold another program
and/or data, Refer to Bill Jones' EXTRA MEMORY
PROGRAMMING article in Update Kagazine for some of
the implications of working in DOCK bank.
See References
PAqe 33
1. Allows a choice of any of the 8 RAMDISK banks.
FEATURES
2, SAVEs the chosen RAMDISK bank to
automatically.
floppy
3. Will RUN a program in DOCK or HOME bank.
4, Allows a BASIC program to be MERGED into HOME
bank or a new program to be keyed in.
5, Hill move a program from HOME bank into DOCK,
6. SAVEs the program in HOME as a BASIC program
and the one in DOCK as cartridge code.
7, Reloads the- saved RAMDISK bank after these
SAVEs have been completed thus restoring the
computer to its original condition.
8. Uses no variables internally except for the
string variable 7$ so will not normally interfere
with the operation of a BASIC program HERGEd with
it.
9. ALL features are HENU driven for ease of use.
19. The screen and ink colours change when you
change banks so that you will know which bank is
active. This information is important because you
cannot LIST or EDIT lines if you are in the DOCK.
GETTING STARTED
Type in listing 1 ("maker.Bl") and GO TO 9999 to
save it.
GO TO 10@ to create and save “mave2#j.cl". This
step need be done only once for each disk to be
used.
Type in listing 2 ("loader.B1”) and GO T0 9999 to
save it. This is the program to be RUN when a new
AROS is to be created or programs are to be run in
both HOME and DOCK banks.
Type in listing 3 ("PRGMV.B3"). Save as "PRGMV.B3"
and as a code file: <RANDOMIZE USR 100: SAVE
“CORE.CL"CODE PEEK 23635+ PEEK 23636,3008>. The
two PEEKs find the beginning of the BASIC progran.
This is necessary since LARKEN moves (prog) up 50
bytes if the large printer is activated. The 3660
is an arbitrary number large enough to be sure
that all of the program has been saved.
USING THE PROGAMS
(A TUTORIAL)
1, Since the RAMDISK banks will be used, the WRITE
PROTECT switch must be in the OFF position.
2, The floppy disk must have its protect sticker
removed,
3, Since both the RAMDISK and floppy disks will be
messed with, it is prudent to make copies of eac!
before using the program. ie
4, LOAD “loader.Bl". You will be asked which bank
is to be used.
Enter <1> for bank "A", <2> for “B", etc.
Use <1> for a trial run.
There will be a great whirring and clanking for a
few seconds while it saves the RAMDISK bank you
chose, loads in the matching DOCK bank and a short
me routine.
The screen will flicker, simulating a crash, and
then some more whirring while the BASIC controller
program is merged inta HOME bank.
Finally, a menu in black ink on cyan paper will
inform you which DOCK bank you are in and give you
the choice of going to HOME bank or running a
program in DOCK.
The whole process is quite scary.
5. If you choose to RUN in DOCK, the same menu
will appear since the only program resident is the
BASIC controller program (PRGMV.B3).
6. The other option will reveal the BASIC
controller listed in white ink on blue paper,
29
Since the program was just HERGEd into the HOME
bank, it will not autorun.
Use <GOTO 9999> to bring up the menu.
7, The menu will give you 4 options: 1: RUN, 2:
MERGE, 3: MOVE to DOCK, and 4: SAVE & RESTORE.
8. Try option 1. You will be asked which bank you
want to RUN in. Bither choice at this time will
come up with the menu for the bank chosen with the
appropriate ink and paper colours,
After going to DOCK and returning to HOME, use
<GOTO 9999> again to return to the menu.
9, Now try the option 2 ta merge a program into
HOME bank, i
A CAT will be performed and you will be prompted
to enter the name of the progran.
The program to be merged must not include lines
above 9999 or it will destroy the controller
program and you will lose control.
Tf the program uses the TIMEX printer, it should
make a USR call to 2613 to clear the printer
buffer before any printing is done and should
reload "mov2#j.C3"CODE after using the printer.
‘Try “test.B1", This is a one line PRINT program at
line 16. .
10, Return to the menu and choose the RUN option,
Choose DOCK and note that its menu comes up again
because the test program has not been moved into
DOCK yet,
Jl. Return to HOME and call up the menu.
This time choose to RUN in HOME. The test program
will run and print an "OK" message,
12. Return to the menu and choose the HOVE option.
A prompt will tell you to hit akey to return to
menu.
13, Now RON in DOCK and see the test program
running,
Use <GOTO 999@> to get to the DOCK menu.
14, Return to HOME and delete the print line.
15. RUN in both banks and note
Program still works in DOCK.
that the test
16. Now move the program to DOCK and RUN in both
banks again.
The test program has been removed from DOCK.
(This program should be removed before u’ing the
last option of saving the DOCK program)
17, Put a line somewhere, <1 REM>
will do nicely.
The SAVE option deletes lines 1 to 9998 and there
must be something to delete. 30
For example,
Choose option 4 of the HOME menu.
The program in the HOME bank will be saved as
"HOMEn.B1" where n is the chosen bank.
The DOCK bank will be saved as "DOCKn.Cl"CODE
32768,1. where 1 is the length of the file in
DOCK.
The RAMDISK bank "RDBNKn.Cl" will be loaded, thus
restoring RAMDISK to its original state.
But the RAMDISK bank is still switched on and a
program loaded in now would overwrite the data in
the bank.
You will be prompted to switch off the power
supply before doing anything else with the
computer.
18. Now switch on and try RAMDISK. It should work
normally,
SASSO ITI IIIT IER EER TT Oe
USING YOUR AROS
Assume that you have moved a BASIC program "XX.B1”
into bank 7 and want to keep it there to be run at
any time.
Bank 7 cannot be formatted as a RAMDISK bank in
drive 4.
The AROS was saved as "DOCK7.C1" when you created
it. Change the name to "XXAR.C7" and put it into
bank 7 as follows:
<OUT 244,249: OUT 7,68: RANDOMIZE USR 100: LOAD
"XEAR.C7"CODE> <QUT 244,0: 0UT7,@>
The program will stay in the bank as long as the
battery backup is in place. i
To run the AROS: <OUT 7,4: NEW>. It's that simple,
The bank can be used for other prograns since the
code resident in bank 7 will be saved when the new
BANK7.Cl is created with the package and will be
restored when the process is finished.
Thus any number of programs can be run in the one
bank as long as each is given a distinctive name
and is loaded into the bank as required.
File "XXAR.C7" would have to reloaded if it is
desired to have it resident in the bank.
RRARARRARAERERRRRELARRRRARRAR RAR RRR ERR ORE
LISTING 1 (maker.B1)
5 REM TO CREATE THE CODRUTILITY "nov26j.C
3" WHICH SWITCHES PRO DOCK 10 HOME BANK AND HOVE
$A PROGRAM FROM HOHE TO DOCK, <GOTO 100> © LARR
Y CRANFORD 26 JAN 90
20 PRINT AT 10,4;"THIS PROGRAM WILL PORMAT";AT
11,9;"A RAMDISK BANK";AT 13,4;"WHICH BANK WILL BE
USED?";AT 14,12;"(1 TO 8)": INPUT B: LET BS="735
16246": LET LRBNK=CODE B§(B) 416
30 RANDOMIZE USR 160: LOAD "CORE.CL"CODE 32786:
RESTORE 38: POR X=32768 10 32779: READ I: PORE X
(Yi NEXT X: DATA 1,2,12,128,15,1,0,6,B,LRBNK, 184,
Ul: RANDOMIZE USR 169: SAVE "DOCK"+STRS Bt".C1"co
DE 32768,3900 ;
40 STOP
19@ RESTORE 166: POR X=23296 10 23334: READ Y: P
OKE X,Y: NEXT X: DATA 175,958,198,992,195,040,014
,237,091,083,092,042,689, 092, 205,869,623,017,012,
128,175,211, 244,126,245, 862,240,211,244,241,018,8
35,019,011,120,177 032,238,201
116 RANDOMIZE USR 109: SAVE “mov20j.C3"CODE 2329
6,39: STOP
9999 RANDOMIZE USR 199: SAVE “maker.Bl LINE 1
LISTING 2 (loader.Bl)
19 CLEAR 65367: PRINT AT 16,0;"THIS PROGRAM WIL
L HOVE A BASIC"'" PROGRAM INTO A RAMDISK BANK"''™
WHICH BANK WILL BE USED?"'™ (1 To 8)":
INPUT B: LET BS="73516240": LET LKBNR=CODE BG(B)+
16
20 OUT 244,244: OUT 7,LKBNK: RANDOMIZE USR 169:
SAVE “RDBNR"#STRS B+".CL"CODE 32768,32768: RANDO
HIZE USR 16: LOAD "DOCK"+SIRS Bt" .C1"CODE : OUT
244,02 NEW
9999 RANDOHIZE USR 100: SAVE “loader.B1" LIKE 1
LISTING 3 (PRGHV.B3)
1@ REM DO KOT DELETE THIS LINE
9991 POKE 26664,(PERK 26664)+1: GO TO 9997+(PERK
26664>1)+(PEEK 23759=6)
9992 CLS + PRINT AT 1¢,0;"RUN PROGRAM IN"''"L: HO
ME BANK"''"2:DOCK BANK"''"CHOOSE": PAUSE @: PORE
23750, 128%(INKBYS="2"): BORDER 1+{ INKE! yea:
PAPER 14( INKEYS$="2")*4: INK (INKEY$="1")%7: GO TO
4
9993 CLS : RANDOMIZE USR 100: CAT "",: INPUT “ENT
ER NAME OF PCH 70 BE HERGED ";2$: RANDOMIZE USR
100: MERGE 2$: GO TO 9999
9994 CLS : RANDOMIZE USR 190: PORE 26662, (PEEK 23
6414256*PREK 23642)-(PEER 23635+2S6*PERK 23636)+1
4: RANDOMIZE USR 23363: PRINT AT 10,6; "THIS PROGR
AM 18 NOW IN BOTH DOCKAND HOME BANKS’ '“AND YOU A
RE IN THE HOME BANK"''™PRESS ANY KEY FOR MENU": P
AUSE 6: CL
$ : GO TO 9999
9995 RANDOMIZE USR 160: SAVE “HOME"#STRS PEEK 266
60+".BL": DELETE 1,9990: OUT 244,240: OUT 7,PEEK
26661: RANDOMIZE USR 199: SAVE "DOCK"+STR$ PEEK 2
66604" .CL"CODE 32768, PEEK 26662+256*PEEK 26663: R
ANDOMIZE USR 199: LOAD "RDBNK"#STR$ PREK 266604".
CL"CODE :
OUT 244,0: OUT 7,8: CLS : PRINT AT 10,0;"HOME, DO
CK BANKS HAVE BEEN SAVED"''"RAMDISK BANK HAS BEEN
RESTORED"''"SHITCH OFF POWER SUPPLY BEFORE"''"LO
ADING ANOTHER PROGRAM": STOP
9996 BORDER 1: PAPER 1: INK 7: CLS : RANDOMIZE US
R 23296
9997 RANDOMIZE USR 190: LOAD “mov20j.C3"CODE : OU
T 244,240: PORE 26660,PEEK 32776: POKE 26661, PEEK
32777: POKE 26662,PEEK 32778: POKE 26663,PEER 32
779; OUT 244,63 RANDOMIZE USR 160: MERGE "PRGHV.B
3°
9998 BORDER 5: PAPER.5S: INK @: CLS : PRINT AT 19,
$;"YOU ARE NOW IN DOCK BANK ";PEEK 26660''"YOUR C
HOICES ARE"''"1: SHITCH TO HOME BANK"''"2: RUN A
PROGRAM IN DOCK BANK"''"ENTER CHOICE “: PAUSE @:
GO TO 9996%(INREYS="1")
9999 OUT 244,@: CLS : PRINT AT 9,7;"YOUR CHOICES
ARE"''1; OPERATE A PGM IN BITHER BANK"''"2: HERG
EA PCH TO HOME BANK"''"3: HOVE THIS PGH TO DOCK
BANK"''"4: SAVE HOME & DOCK BANKS ";PEEK 26660;"
anp"'* RESTORE RAMDISK BANK"'' ‘ENTER CHOIC
BY: PAUSE
§: GO TO 9991#CODE INKEYS-48
RRARALRARAARAAAAAARARARAARAARARARTRARARARARARAATAR
DOCUMENTATION FOR THE PROGRAMS THAT MARE UP THE
1/8 2068 UTILITY TO PUT BASIC PROGRAMS INTO THE
LARKBN RAMDISK BANKS
DONATED TO THE PUBLIC DOMAIN BY LARRY CRAWFORD
357 REYNOLDS RD LONDON ONT CANADA N6K 2P8
(519) 657-9119 27 JAN 90
RRERERRRARRER RARER RERREARER AR RR ERRAERERERER ARRAS
For background and theory refer to the tutorial
Tasword file "tutor.CT” on this disk.
A RAMDISK bank is one of the RAK chips on the
LARREN RAMDISK board,
A DOCK bank is one of these chips used without
being fomatted into drive 4.
An AROS is a DOCK bank file that
"overhead bytes" and a BASIC progran.
contains
JAERI RRR RI IR IRR ROE
“maker .B1"
This short program is really two programs in one.
Lines 20 and 3@ will create a code file which,
when loaded into a DOCK bank, simulates a BASIC
AROS cartridge. Lines 19@ and 11¢ create the 39
byte m/c program which is called to switch from
DOCK ta HOME bank and to move a BASIC program from
HOME to DOCK bank.
LINE 20
Prompts for the bank to be used as an AROS. This
number is assigned to variable B.
RAMDISK banks are identified as A, B, C,...,H. We
will use the sequence 1, 2, 3, ...,8 instead,
This will help distinguish between the lettered
RAMDISK banks and the numbered DOCK banks.
A string variable, 85, is assigned the set of
integers which are the RAMDISK bank code numbers.
The appropriate number is sliced out of the
string, adjusted to turn off the write-protect
feature, then assigned to the variable LRBNK.
LINE 3¢
3,1; Loads in a previously prepared code program. Hore
on that later. POKES the “overhead bytes” for the
AROS inte the first eight addresses in the bank.
Then pokes the bank number and the bank code
number into the next two. The last two bytes are
the number of bytes to be saved as code. The two
numbers in the DATA statement represent 3608, an
arbitrary number large enough to include all the
data.
Then the file is saved as “DOCKD.CL", where b is
the bank number.
A file of this format must be stored on the disk
before the utility can be used.
LINE 106
POKES the following m/c program into the beginning
of the printer buffer:
23296 XOR A
LD (AROS FLAG),A <switches to HOME bank>
JP 3624 decimal <the entry point to BASIC
in ROH>
23303 LD DE, (prog)
LD HL, (elin)
CALL 5957 decimal <"difference" subroutine
in ROH. Loads BC with
difference between HL
and DE. Loads HL with
(preg)>
LD DE,3278¢ dec. <where the BASIC pgm is
to be moved>
loop XOR A <load A with rero>
OUT (244),A <all chunks of RAM in
HOME bank active>
LD A, (HL) <get byte of BASIC pgm>
PUSH AF <store byte>
LD A,248 dec.
OUT (244),A <chunks 4 to 7 active in
DOCK bank>
POP AF <get byte of BASIC pom
LD (DE),A <put byte in DOCK bank>
INC HL
INC DE <inerease both pointers>
DEC BC <decrease counter?
LD A,B
ORC
IR NZ, loop <loop until counter is §>
RET
LINE 110
The 39 bytes are saved as “mov24j.Cl" ready to be
loaded later when needed.
Lines 199 and 116 need only be used once.
é
PIronririreerreceee recite irc eeneet ciel lig)
"Loader .B1”
This is the program that is rum to actually use
the utility.
LINE 10
Prompts for the bank number, B, and calculates the
value for RDBNK.
LINE 20
Switches on the chosen bank and saves the resident
RAMDISK data.
Loads in the matching DOCK bank AROS.
Switches on ali chunks of HOME bank, leaving the
DOCK bank selected.
thetthttinhereeategettentsentecteseteeatenee tes
“PRGHV.B3" and “CORE.C1"”
Both are the same program: one saved as BASIC and
the other as a code file, Between them they are
the controllers for loading and running BASIC
programs in HOME and DOCK banks.
The code version is resident in the AROS and runs
when the computer is NEWed by the loader progran.
LINE 16
this is a dumy line needed if no other program is
merged into HOME bank. The SAVE option deletes
lines 1 to 9999. Therefore, there must be at least
one line in that range.
LINE 9991
Address 26664 that is peeked, incremented, and
poked, is located in an unused corner of RAM. it
has a value of zero on startup and is used here as
a flag to indicate whether or not this is the
first run of the program.
If this is the first run, PEEK 26664 will not be
greater than 1 and PERK 2375@ will not equal sero
(we're in DOCK now so 23759 holds 128), ‘Thus the
GOTO will be to 9997+0+4.
If this is not the first run and we're in DOCK,
the GOTO will be to 9997+1+4.
If we're in HOHE bank, GOTO 9997+#1+1.
LINE 9997
this line is used only on startup. First the n/c
routines are loaded into the printer buffer.
The top 4 chunks of HOME bank are switched off.
Then the bank number, bank code number, and number
of bytes of code in the AROS are all poked into
the corner of RAM next to our flag.
These parameters must be accessible no matter
which bank is in use,
Finally, the HOME bank is restored to its full
size and the BASIC controller, “PRCMY.B3" is
merged into place.
LINE 9998
Sets the paper and border to cyan and ink to
black. These colors inform you that the computer
is operating in DOCK bank.
A menu is displayed giving you the option of going
32 to HOME bank or running a program in DOCK.
If the choice is to goto HOME then the GOTO will
be to 999681. If not, GOTO 9996%0; thus
effectively running the program in DOCK,
LINE 9996
Sets the paper and border to blue and ink to
white.
These colors inform you that the computer is
operating in HOME bank.
The bank-switching routine at 23296 is called and
control will now be in HOME bank.
The resident program will not run automatically
but must be activated with a GOTO to the
appropriate line number.
GOTO 9999 will always bring up the menu in HOME.
LINE 9999
The HOME menu. First, the HOME bank is switched in
and the 4 choices displayed.
PEEK 26668 in the SAVE option is the bank number.
The GOTO line is simply 9991+ the choice number.
If the first option is selected, contro] is passed
to line 9992.
LINE 9992
Anew menu is displayed giving the option of
running the program in HOME or DOCK banks.
The PORE to 23750 is either 9 or 128 depending on
the bank chosen. The operative bank is determined
by the value stored in 23750,
Similarly, the border, paper, and ink colors are
set by the Boolean logic in each of the
statements.
The GOTO @ effectively runs the program in the
selected bank.
LINE 9993
Activated by the MERGE option of the menu.
It does a CAT and prompts for the name of the
program to be merged.
MERGES that program and returns to the menu.
LINE 994
Called by the MOVE option of the menu, Whatever
program is resident in HOME will be placed into
the AROS.
First, the number of bytes between (elin) and
(prog) is found and 14 bytes added to allow for
the “overhead” bytes of the AROS and our
parameters, This number is double poked into
26662, replacing the previous length stored. (We
had poked in 3006 originally. Remember?)
The m/c at 23303 is then called to do the actual
move then a message is displayed to inform you
that the move has taken place.
The menu is then called up once more.
LINE 9995
The SAVE option. Lots of activity here.
First, the program in HOME is saved under the name
“HOMED.B1" where b is the bank number.
Then lines 1 to 9999 are deleted to be sure that
line 9995 is not in a chunk of RAM that will get
switched off.
Next, chunks 4 to 7 are switched off for MOME bank
and the write-protect turned off in DOCK.
The number of bytes to be saved is PEEKed from
26662 and 26663 and the AROS saved as "DOCKb.Cl".
the RAMDISK bank that was saved at the beginning
is put back in place by LOAD “RDBNKD.CL".
A message is displayed to be sure that the
computer is completely back to normal by switching
off the power supply before using it with another
program,
PI trICCiiiee tier lieeticeoieenihieoiiei ring gy
“CORE.CL"
The controller program "PRGKV.B3" saved as code,
After PRGHV.B3 is typed in, it is saved as
"CORE.C1"CODE PEER 23635+ PERK 23636, 3000.
RRRRARARERRARRAERR RARER ERR IRE RRR RRR RR TRE OR
VARIABLES USED BY THE UTILITY
IN AROS IN RAM =—- MEANING
32776 26666 active bank number
32777 26661 LARKEN bank code
26662,3 length of code file in AROS
32778,9
26664 flag for first run of pgm
RRRARARARERERERE RE RIERA ERE REET IRAE RAR TERRA
a REFERENCES z—
beck issues
of Update and the total of these
form a complete reference on
Extra ewig, betk from the
Oct 87-- Merory map
Mod of TS-1000 Ram.
Apr 88-- System Variables.
MOVE > Program.
Jul 88-- DOS-64 + Bankswitching.
First of Chuck Bothner's
series on RAM EXPANSION,
‘Oct 88-- Larken Ram Disk.
Extra menory recap.
tuck Bothner's second
art on RAM EXTENSIGN.
Jan 89-- LKDOS OFF Switch.
Jul 89-- FD-68 Update (bkswitch).
Oct 89-- Larry Crawford's first
Ex Merory article.
Jun 90-- Two articles in this
dasue.
Snowe ~inmerrer
WIDJUP (Bill Pedersen, 1120 Merrifield S.£., Grand Rapids, MI 49507) has sane
interesting facts on PRINTERS and DRIVERS that are applicable to all Stes, His
CAD DISKS are for the TS-2068 LXDOS Systers. Write for informeticn.
DOT MATRIX PRINTER DRIVER
The WIDIUP Co. graphic printer driver for 9 and 24 pin printers
isa vary flexible taol. [t was designed to do WINDOWS. These
windows refer to the printed page, not the screen.
A window can be mapped to the screea in many ways. Some can
lead to confusion. If it happens to be a screen dump, it's easy
to forget that it is the printer which is being mapped to the
screan--not the opposite. All windows are empty until written
to by programs.
Artwork programs write graphics to the screen, or to a file
which can be displayed. For computers with lots of menory the
files might be printer page images, often compressed, giving the
program DESKTOP capability.
Most art and font programs for the TS2068 are screen oriented,
That is where mapping becomes important. The printer window can
be mapped to the same location that the artwork program uses.
The artwork program now appears to be writing to the printer.
Vhen the printer window is small enough to fit on the screen,
it is possible to have "What you see is what you get.”
More properly, “You can almost see what you are going to get."
At best, you may still have distortions. VYSIVYG is a catchy
phrase, but it is st{ll an idealistic view that can't be mt
using any common monitor, unless dedicated for special use.
It is not wrong to want to see what your printed output will be
dike. That is a valid human engineering goal, though not always
necessary. Good programs provide a “PREVIEW function, often
backed up with "FAT BIT” managing editors.
When a printer window is too large to be displayed across the
screen, it can be divided into pieces which can. An example is
displaying a 960x8 dot printer window on four consecutive screen
lines with some space left unused at the end of the fourth line.
This is nice for graphic mde word processing.
There are 11 pokes tecessary to set up a window and map it to
the screen. An application might use many windows, So some way
to mike this easier is required. One way is to set up an array
with the most frequently used windows predefined.
The array J$(20,11) is used in VIDJUP programs. That for CAD#3
is ghown below. References to a checkerboard apply to a DEXD
for GRAPSONY, a utility for developing windows for applications
Like DESKTOP.
JSE.AS WINDQW DATA ARRAY
Screen Corner TYPE Print Margin Shar LF/(R Line Graphic Total dots
Coluan Scan CODE Passes dats = Wide lan’ Feeds E ish est r
9 9 ‘ a © R 2 u § ® 1 Screan dung. .Sorsal(9 pial
a 9 8 ua i R 2 u 5 rv) 2 Screen Quap. 700A? pi)
a 18) g { a oh i it t 0 z Gh Vide. Lines ct-zi(beth)
a 9 3 1 a 10 2 i t 1 3 360 Got pats HG0%9)
a Fr g 1 o 1 ? i t tes ? 560 dat pass Fetbeth?
q 4 2 t 9 rf 2 L 192 3 det pass Hiboth)
9 e g 1 1 a 1 4 § wm a ‘kerdoard top lefts? pin?
1 9 3 1 4 2 u 5 153 Q Checkerboard tap right
q g 3 1 4g i 9 5 ae 4 erboard white left
t a 3 { 9 2 ua 5 163 4
9 i g i ty 1 4 5 xe 9
1 ey 3 t ) g 2 ue 3 183 2
Q 162 3 - 40 i i q $ 28 a
1 18 i oo Ht 3g & § it 3
# FS cra 9 es a cry i rs #
R 2 era R ik R H 2 ZR
& 3 ‘a 32 R ya i ‘re er 2
iO an? 3 ra? 4
2 2 2 ery R 2 Evy nv krd 2
PRISTER WINDOW PARAMETERS
Margin Dots.. These are blank dots which aeed not be mpped to
the screen. They may be margin, column gap, etc.
Chars Wide.. There are eight dots needed per character shown
on the screen, but each screen dot may be copied to
the printer a selected number of tines.
Total Dots.. The total of margin and multiplied char dots.
LF/CR, . Vindow taraination may require one or both codes
to allow concatenation, or causa anew line. This
parameter specifies the number of codes Issued.
Line Feeds.. The number of minimum line feeds to be taken at
the end of the window. This can be 0.
Frt Fasses.. The number of times a cingle window is repanted
to make a larger one. This 1s how dumps are done.
Graph MODE.. The printer graphic mode to be used for this
window. 24 pin printers do not have mode 5, but
support 24 pin graphics. These added modes are not
supported by this driver.
SCREES PARAMETERS
Sera Calumn.. Column 0 ta 31 as usual. (Start location)
Scra Scan.. Scan 0 ta 195, from top down. (Start location)
Chars Wide.. From 1 to 120 (less for GORILLA BANANA, more for
wide carriage printers). Yrap-around is active.
Characters printed multiple wide reduce this.
TYPE CODE.. This byte contains width, height and video mode
specifications.
Double wide.
Toggle for D_FILE2. .
64 wide video' mode.
Single high. (BIT 2 = 0)
Double bigh. (BIT 3 = 0)
BITS 7,1,0... Bot used.
Designers of printers cater to wants and needa of users even
when those are based on less than full knowledge of how things
work. The ideal of WYSIWYG bas been one of these. Several of
the graphics modes have been providad to achieve this for CRTs
and displays of specific types, including 1S2068.
The designars alsa provided for more enlightened users, though
not always with compatibility with older methods in sind.
Dot-for-dot square printing is Moda 5 for 9 pin printers, but
Mode 0 for many 24 pin printers.
Same displays emulate a printed page. 24 pin printers were the
next advancement to obtain letter quality printing in aany font
styles that people wanted. This expanded graphics performance
as well.
This new graphics capacity is only partly compatible with the
older printers. As mentiontd, Mode 5 was lost (though a NEARLY
equivalent mode is available). 9 pin mode is lost as well.
This was acceptable because very few existing printer drivers
“‘ealled for these, and SBARLY was close enough to satisfy most.
The impact on existing software was minimal. It is in the area
of mximum utilization of graphics that there is little comma
ground. f
Existing programs making mximum use of graphics are generally
available only for other computers that use custom drivers.
CADe2 bas a driver for OLIVETT! PR2300 ink jet printer.
(1/216" line feed?
CAD#3 has a driver for EPSOM 9 Pin printers and compatibles.
1/216" line feed)
CaAD#4 hag a driver for STAR 9 Pin printers and compatibles.
“(LAi44" Ine feed) (Being updated)
CAD#5 has a driver for EPSON 24 Pin printers and compatibles.
(1/180" Ling feed) (Hot available yet?
‘Thace programs differ because graphic files are unique to each
printer, and that requires special routines for generation.
Data files, however, are completely transportable between them.
(€)1989, 1990 The WIDJUP Co. WIP 35
text 87 and Quill
Part I
Peter Hale, P.0. Box 8763, Boston, MA 02114
Unless you have been on the moon for the past two
years you have at least heard of text*?, the new
word processor for the Sinclair QL and Thor.
Whatever objections there are to Quill - its
snail-like movement around a file and its
occassional lockups - its price is right and most
of us have learned to live with its ‘features’,
DEFINITION: A feature is a bug that has been
around so long that everyone has learned to live
with it and takes pride in knowing how to avoid
it.
This article, and the ones that follow, compare
Quill and text®? while at the same time provide a
tutorial for using text®?,
WHY text!#??
First of all, text®? is a WYSIWYG (What You See
Is What You Get) word processor with many of the
functions found in good editor programs and a lot
of other goodies besides,
In truth, there may be more bells and whistles
than the casual writer may want, but as a word
processor it has features and is capable of work
that is impossible on any other wordprocessor for
any other computer.
A Brief List of the Major Goodies:
First and foremost, it doesn't ever lockup.
The cursor is faster than in Quill and erasing or
moving blocks is swift like a bunny rabbit.
Virtually every printer font and enhancement can
be shown on the screen in a different text color
or screen font. Italic is italic, condensed is
condensed, double-wide is double-wide, and it can
be red, green or white. You choose. Justification
and word wrap are automatic and take into account
different pitches (characters per inch) of text.
‘it stakes up
Among
The default font is proportional: an
less horizontal screen space than an ‘n'
other virtues, this lets you have 10% more
characters to a line with no deterioration in
readibility.
With right justification all spacing is micro-
kerned. No double spaces to pad things out.
it's almost like a type-set book, and the printer
behaves the same way.
All files are in RAM. Unlike Quill, which wants
to hog all available memory, it permits limits to
be set on the memory to be used. Then, up to the
memory available, text®? sets a limit. However,
except in its minimal configuration, it needs
memory expansion.
Up to four columns of text can be printed on a
single page in a single pass of the printhead.
(It does not show that way on the screen - you
see just one column at a time.)
A Quill _doc file can be imported to text®? and
carry with it all typefaces, tabs and margin
settings, converting them to the appearance set
in the program.
If you so desire, text®? can convert the QL to a
Dworak keyboard or set any key to type any
character in the QL character set or any other
character you choose to create. However, its up
to you to mark the keys themselves.
With auxiliary files (at extra cost) screen dumps
are possible and a wide range of new fonts can be
designed for special effects. There is even a
laser printer driver specific to text#?.
A Brief List of Major Differences:
The first is also the first one under Goodies,
The next difference is that text®? has no Help,
as does Quill, through the Pl key. (Pressing Fl
in text®? will activate the spelling checker.)
A third difference is that the Redraw screen key
is P4, not SHIFT F5 as in Quill.
Two other differences have to do with the cursor:
When the cursor control moves more than one
character, as with Shift Right arrow, it seeks
out the position to the left of the first space
3.6
encountered; Quill seeks out the position to the
right.
The other cursor difference is that it acquires
its font enhancements from the character to its
right; Quill picks up enhancements from the
character to the left of the cursor,
The final major difference is that there is no
overwrite function in text®?, The reason is
fairly simple. text®? can display varying sizes
of font on the screen. If the current screen
font is double-wide, what happens when trying to
overwrite in a condensed font?
Although disconcerting at first for a person
accustomed to Quill, the new standard is not that
had ta come to terms with.
USING text*?
I£ you are spoiled by the simplicity of using
Quill straight out of the box, you may feel
frustrated in getting up and going with text*?,
Before starting text®? for the first time, it is
necessary to select the correct printer driver
from the dozens of files for a wide range of dot
matrix and daisy wheel printers. The one that
applies to your printer must be copied to a file
called driver_P87, Henceforeward, whenever text®?
is loaded, this file is automatically accessed
and the standards of a particular printer modify
the program. (Once running you may access other
driver files by name to change printers.)
Thus it is not necessary to read a printer_dat
file each time a document is printed. Each
printer driver includes all possible translate
functions,
that is present. somewhere in the printer's ROM
can be used without having to run install_bas and
be restricted to ten translate options,
You must write your own boot. The manual has a
sample boot, but you may want to expand on it,
particularly to define ALTKEYs,
After loading, which takes a bit longer than
Quill, press CTRL C. text®? is EXECed, not
EXEC_Wed. There are no file handling features as
in Quill. This is partly to concentrate on
important features of word processing, and partly
Any character in the QL character set
because so many users now have toolkits or
Taskmaster or whateever that handle files far
better than Quill does and it doesn't make sense
to reinvent the wheel. (text? multi-tasks just
fine under QRAM or Taskmaster.)
Some function keys are similar to those used in
Quill. F2 shows the cursor status and the current
Ruler, It toggles as in Quill. F3 enters the
command mode and a main menu is always presented
at the foot of the screen.
There are a few familiar commands: Goto, Print,
Search, and Zap are ones you already know.
There is Files, but its purpose is very
different. No load, save, margin, tabs, justify,
footer, header, design, etc., but the functions
are all there together with many others.
GOTO goes to the top or the bottom of the text,
or to a page number, as well as first page, next
page and top of current page, and also goes to a
document line number - and boy does it get
whereever it is going fast! (Using line numbers
is tricky because you have to know where you are
going in order to get there.)
PRINT is more complex than in Quill, but it's
also more versatile. it will print a selected
range of pages but also a selected range of
lines. When printing text, the current cursor
position is the default line number for the first
line to be printed.
This command also defines headers and footers
(which can be multi-lined), and the printout can
be right justified even though the on-screen text
is not,
Among other neat features is the option to print
alternate pages. Why? You might want to print
on both sides of a sheet of paper, but have the
text sequential, Or perhaps page numbering needs
to be at the outer edge of a page, and would
require a different footer and/or header for even
numbered pages than for odd numbered pages.
SEARCH has the features found both in Search
and in Replace in Quill and it's a lot faster.
Unlike Quill, which starts at the beginning of a
file, text®! searches from the current cursor
position, There's an option for Global replace-
37
ment, but because of its inherent dangers, it's
is only offered after the first replacement.
Search is case specific, meaning it ignores
‘HELLO’ if you ask it to search for ‘Hello’.
text*? remembers the prior search and/or replace
string so that you may recall it and edit it to
search for a modified string.
ZAP has both the document Zapping function in
Quill, and the Quit, and goes through the same
verification as does Quill.
FILES is different from Files in Quill. It
handles load, save, merge, import or export.
File names are not restricted to 8 characters as
they are in Quill. They may be of any length and
can include other characters not permitted in
Quill including the underbar.
Saving and loading assume a _T87 extension and
file names are always in capitals on the disk
directory. Save is not as polite as in Quill. It
does not ask permission to overwrite a file of
the same name. It just does it.
Merging inserts a _T87 document at the cursor, as
in Quill, but also adds any Rulers not already in
the document to the table of Rulers.
There's the choice to Export in ASCII (like
Printing a _lis file from Quill] -but making
necessary conversions for Tabs) or text®? format
with the extension _L87 (its primary purpose is
to move text between documents.)
If a block of text has been highlit, only the
block will be exported; otherwise, the whole
document will be exported.
CURSOR CONTROL in text*? has capabilities
much as in Quill, but does a lot more. It adds
the ALT key for greater versatility. SHIFT and
an Up or Down cursor key move 10 lines, not just
a paragraph. Add ALT key and it moves 40 lines.
SHIFT with a Left or Right cursor key sends the
cursor to the start of the next space, not after
it, as in Quill, but you catch on fast.
ALT plus a Left or Right cursor key takes the
cursor to the start or end of the current line.
Deleting is like Quill, except that the ALT key
is used with the Left and Right cursor key to
remove whole lines.
As with Quill, there is a separate command to
delete blocks of text.
RULERs are not found in Quill. text®? includes
Margin, Tab, Justify and some Design features in
one command called Ruler, but there is a learning
curve to get the hang of using rulers,
The Ruler command in the main menu is used to
edit and select rulers. On power up there is one
default ruler (Ruler 0). Multiple rulers can be
created and a selected ruler can be inserted at
any point in a document. Any ruler can be copied
then edited into a new ruler up to 11.5" wide.
The special feature of the Ruler Command is that
its parameters are all in absolute units of
length (tenths of an inch or millimetres) rather
than columns, as in Quill. This means that text
can be formatted according to the printer pitch
chosen for printing a specific character or
characters.
(As an aside, the rapid movement of the cursor in
text®? makes block definition seem about ten
million times faster than in Quill, so it gets to
be very handy.)
Import offers text®? or ASCII or Quill format.
The first two options insert the imported file at
the cursor position. The Quill import loads a
Quill _doc file as new text, and preserves all
Quill highlights, converting them to the visual
form used by text®?, Tabs and end of paragraph
markers are retained, if desired. Al import
functions are very quick indeed.
On screen, several pitches can be mixed without
effecting the layout. Thus, if the selected
printer font is double-wide, text*? knows to
display only half as many characters per line as
with 10 pitch pica and 10% more characters will
show on a line with proportional spacing. This
is what is meant by WYSIWYG.
The ruler tells the truth, Occassionally, a
combination of screen fonts may force a line
outside the limits of the right margin. Do not
dismay. text®? knows what it is doing and what
gets sent to the printer is what you want sent.
3.8
Rulers are saved with a document and it's wise to
have a special file with a number of favorite
rulers to load when starting a new document,
Each ruler carries a range of information:
Justification: right or left. (Actually, the
choice is to justify or ignore, on the grounds
that justify means right justification.) There's
no Center Justification; use Center Tab instead.
Line spacing: the space between lines can be
adjusted to fractions of an inch. The default is
1/6 of an inch (12/72 or 30/180, depending on the
printer) but can be modified to your heart's
content, Thus it is possible to have double
spaced text mixed with single spaced text,
depending on the selected ruler.
Margins: left, right and indent. Indent defaults
to left margin, but may be designated as to the
right where the first left tab is located if it
is automated from a special indent feature in the
Mode command. The Indent mark itself is
exclusively for setting Indent to the left of the
left margin to create a hanging paragraph.
Selection: only one ruler at a time is active
under the cursor. A ruler is selected as an
option from the Ruler command. (Thé current
ruler is shown when the F2 key is toggled on.)
The selected ruler is inserted at the cursor when
SHIFT F5 is pressed.
Tab stops: left, right, center and decimal.
Enough already!
The next article in this series will explore
block handling and the numerous features in
text®? that make screen presentation truely
revolutionary,
This article has been prepared on text®? mostly
in 15 pitch type. Note the use of micro-kerning.
You may order text*?, version 3.01, from Software
87, 33 Savernake Rd., London, NW3 2JU United
Kingdom for £60. It includes Qtyp as an
integrated spelling checker with fnglish, French
and German dictionaries. It is also available in
the USA for $94.95 from EMSoft, P.O. Box 8763,
Boston, HA 02114-8763 (617) 889-0830.
39
EMSoft
Software for the QL that works hard
Now has in-stock the very best true
WYSIWYG QL word-processor: text87
v3.00 with spell check and several
new features. (includes 1 hr USA
help line). $94.95
Tax-time means TAX~-1-QL/89 $24.95
RECIPE _dbf $14.95
INVENTORY dbf $9.95
TRUST_FUND dbf $24.95
QLAND_LORD dbf $24.95
MAILBAG _dbf $24.95
DBTutor dbf $24.95
DBProgs dbf $19.95
CDIR/BOOTS SBas $9.95
On 5.25" DD or QD disks. On 3.5" or
microcartridge add $2.00.
FREE CATALOGUE
EMSoft
P.O. Box 8763
Boston MA 02114
(617)889-0830
Two tough things to find’ for your
Timex or Sinclair 2X/T3 computer--
SOLID INFORMATION & GOOD CONNECTORS
YOU KNOW WHERE TO GET THE BEST INFO
FOR YOUR 2X/TS--SYNTAX, SQ, & THE
FOYT BOOK CHECK IT OUT-~ASK ANYONE--
THEN GET 'EM ALL FOR
JUST $19.95 plus $10 san
BUS CONNECTOR & EXTENDER & HOUSING
LIKE A PRINTER CONNECTOR
Keyed Connector, Extender PC Board
PLUS Molded Black Plastic Housing
Fits: 2x80 & 81
TS1000 & 1500
PC8300
ZX/TS SUBSET
OF SPECTRUM
| & 2068
Pkg of 3, ONLY $13.95 plus $2 S&H
SAVE Buy 2, get a FREE one
9 for $26.95 + $6 S&H SAVE
EMS, Box 8763, Boston, MA
617-889-0830
02114-8763
VISA & MC Add 4%
Ey
15-2068 Programing In the Abstract
THE STACK: The manipulation of the STACK
comes under the heading of “where only fools dare
tread". But aren't we brave? Look at it this
way, "you cannot hurt anything by trying, so why
not?”. AND, we might be enlightened. Key in the
following little program and SAVE it. Then we'll
traipsie through the stack a bit.
10 FOR N=25088 TO 24833 STEP -1
"; PEEK n;: NEXT 1
60 PRINT “RETURN Line="; PEEK 25083+256*PEEK 25084
‘Statement $="; PEEK 25085
70 STOP: GO SUB 90
90 STOP
OK. Pirst off, we will look at what we can
and cannot do with the Stack in BASIC, Timex
intended the stack to be “hidden from the user”,
But a small tydbyte of information is given in the
user manual, page 255. Take a minute to look at
the sketch in figure C-1. The little program
given above PEEKS this area. The Stack is the
7S-2068's exclusive "library" of “pending things
to do". If <GO SUB> is used in a program line,
the LINE NUMBER is factored into a 16 bit word and
that word is stored on the stack at address 25083
and 25084, ‘Then the “next statement number“ in
the line after the GO SUB is stored in address
25085.
+ In our little program, the GO SUB is in line
#70, statement 2. So, if allowed to execute, the
nunber 70 would be stored in address 25083. Zero
would be stored in 25084, and 3 would be put in
adr 25085. Check this out by RUNNING the program.
As the program runs the contents of the Stack
addresses will be printed to screen. Somevhere at
around address 25000, a train of seroes will
print. These Zeroes tell us the "FREE MEMORY”
spaces of the stack. As more and more “library“
items are placed on the stack there will be few
erces in the train, These “TS-2068 Library
items” are put on the stack to be used, and once
used they are erased. All of this is done by the
internal management utilities in the TS-2068 ROM.
BUT, we can have a little influence on things.
When the program runs the first time, a
report will be given. This "RETURN LINE # and
Statement Nbr." will be inaccurate. This is
because there is no RETURN placed on the stack at
address 25083, 25084, and 25085, So, ignore the
report on the first run. The program will STOP at
line #70, When it does, type CONT ENTER. Then
JUNKY STACK:
at line 90. This time
How lets look at what
‘another STOP will occur
DONT do anything for nov.
we did,
We have introduced a “piece of JUNK” on the
stack, because we did not use <RETURN> after the
<GO SUB>. But in this case we do it intentionally
in order to see the RETURN in the Stack. After
the STOP at line #90, type GO TO 10 ENTER, Write
down the numbers given for address 25083, 25084,
and 25085, during the first screen full of
numbers. Then let the numbers scroll to the end.
At the end report the line #70 will be reported,
with statement number 3. So, we have captured the
<GO SUB that is on the stack>. AND the STOP again
occurs at line #70,
Now lets work a bit with 16 bit numbers.
First add LINE # 2000 to the program. add: 2000
stop. What is the 16 bit number for 2000? ans:
2000/256=7.8125. Drop the decimal and 7 is the
msb (most significant byte). The Isb (less
significant byte) is gotten by: 2000-74256=208,
So, the 16 bit number of 2000 is "208,7". Now we
will CHANGE the line number for the RETURN that is
on the stack. POKE 25083,208:POKE 25084,7:PORE
25085,0, After these POKES, Type <RETURN ENTER>,
Note the STOP at line #2000. Now we have learned
how to change a <RETURN> on the stack to a
different line number in a basic program, but WAY
would we ever want to do that?:
Well I'll give you a small example and you
will think of others. Suppose that after a menu
we want to present on screen the data contained in
AS, But if AS has no data, we want the program to
RETURN to a different program line than contains
the GO SUB. I'll construct the routine:
500 (MENU item 4 selected)
510 IF 2=4 THEN GO SUB 900
900 IF LEN AS<1 THEN POKE 25083,208: PORE 25084,7:
RETURN
910. PRINT AS: RETURN
2000 REH Routine to use if A$ has no data,
ROLES: You must have a GO SUB on the stack
before POKING the addresses 25083, 25084, 25085.
Otherwise you CRASH. So, the POKE must be done
AFTER the GO SUB. Dont poke other Stack
Addresses, or you'll get a crash. Oh well, what
the heck, and why not?
Tf you want to find out how fast the stack can be completely corrupted, Remove the
Stop at line 70 and change line $90 to read: 90 GO T0 10, Then RUN. One of the pit-falls of using <cO
SUB> is that BASIC programs can he broken into.
addresses in the Stack are corrupted.
Rach time a GO SUB routine is broken into three
40
USING BASIC STRING / ARRAYS IN MACHINE CODE PROGRAMS
by Charles Bothner
I looked over your letter concerning the use of BASIC variables
and arrays inside machine code programs.
You said that you needed to locate a specific variable in the
BASIC VARS area of memory in order to use the data in a machine
code program. The following procedure will allow the transfer of
the location and size of a simple variable to a BASIC program. If
you want to locate a variable which has not been fixed in size by
a DIM statement, insert the following lines at appropriate line
numbers in your program:
Dear Bill,
1000 POKE 23728, CODE"W"
1010 LET X=USR 23296: REM This is the start of printer buffer
1020 LET SIZE=PEEK (X+1)+256*PEEK (X+2)
1030 LET START=X+3
Line 1000 puts the letter code for the variable into a convenient
storage location, in this case into an unused slot in the normal
system variables table. Line 1010 accesses the machine code to
locate the variable address in memory. In this case I have put
the 28 byte routine into the printer buffer, but any convenient
location could be used since the code is completely relocatable.
On return from the MC routine, the variable X contains the
address of the identifier for the W$ variable. Line 1020 reads
out the current length of the Wt variable and line 1030 gets the
starting address of the actual characters in the variable. If
desired, these values may be POKEd into a convenient memory loca-
tion for subsequent access by whatever MC routine you intend to
use to manipulate the data. Here is the machine code which 1lo-
eates the starting address of the W$ (or any other) simple
variable:
ADDRESS QPCODE INSTRUCTION COMMENTS
5B00 3ABO5C LD A, (5CBO) Get character code
5BO3 CBAF RES 5,A Insure upper case char
5BO5 2A4B5C LD HL,(5C4B) Get VARS area address
5BO8 LOOP: BE CP A, (HL) Test variable identity
5B09 280E JR Z, FOUND Jump if right variable
5BOB FE80 CP A, 80 Is this end of VARS ?
5BOD 2002 JR NZ, CONT Continue if not end
5BOF CF RST 08 Error return otherwise
5B10 o1 VARIABLE NOT FOUND message ident.
SB1l CONT: 23 INC HL Point to size of field
5B12 5E LD E, (HL) Get size of variable
5B13 23 INC HL field size into DE
5Bid 56 LD D, (HL) ;
5Bi5 23 INC HL Point to next location
5B16 19 ADD HL, DE Point to next variable
5B17 \SEF JR, LOOP Test this variable
ES PUSH HL Get the address into BC
Ci POP BC
co RET Done
This routine scans the entire VARS area of memory until the
starting address of the specific variable storage area is located
or until the end of the VARS area is reached, at which time there
will be an error type return. This will happen if the variable W%
(or any other simple string variable which is being searched for)
has not been previously assigned. If the variable has been
located, then the address is returned in the BC register pair.
Line 1010 in the BASIC code above will assign this value to the
variable X on the return from the machine code. Ati
If a search for a fixed dimension string array is desired, it
will be necessary to insert the following assembly code bytes be-
tween the addresses 5B04 and 5B05 in the routine listed above:
C680 ADD A, 80H Converts to proper type
of dimensioned array
identifier
It will be necessary to modify the lines of BASIC code to deter-
mine the actual size of the stored character field in the array
due to the extra data bytes stored in the data field for this
type of variable (see page 258 of the TIMEX 2068 users manual for
the details). Since the array has been previously dimensioned in
the program [e.g. DIM W$(40,256)], we can determine the correct
offset by taking the number of array dimensions (2 in this case)
and doubling it, then adding 1 for the number of dimensions byte
in the variable’s data field and subtracting the result from the
data obtained in line 1020 above.
For the example of W$(40,256) the changes to the BASIC lines is
as follows:
1020 LET SIZE= PEEK(X+1)+256* PEEK(X+2)-(1+2* PEEK(X+3) )
1030 LET START=X+3+(1+2* PEEK(X+3))
Obviously the terms can be combined to shorten the lines but I
left all the terms separate to clarify (I hope) the procedure to
locate the actual starting address for the character data stored
in the array along with the actual length. The size of the actual
character data field could be determined in this case by simply
multiplying the terms in the DIM statement. It is better to
determine the size on the fly for the cases where the array
dimensions may be determined by another variable instead of a
fixed value [e.g. DIM(256,2)].
I hope that this brief explanation will give you an idea of how
to operate on data stored in the VARS area by either BASIC or
machine code routines. To summarize, the transfer of data from
the BASIC program to'the machine code requires the POKEing of the
data into memory locations where it can be accessed by the
machine code. Transferring of a single character or numeric
(integer) value from the machine code to the BASIC program may be
accomplished by loading the data into the BC register pair prior
to the return from the machine code.
If this information is not what you really wanted or if addi-
tional clarification is needed, please let me know.
best regards,
Aweh_ BB,
Chuck Bothner
42
Al Feng is treasurer of the Chicago TSUG (CATSUG)
and an expert programmer of the Sinckair QL. AL
takes time out from his umiting for "Nightine
News”, the CATSUG Newsletter, to give us
ingormation on three interesting subjects.
005 ROM Code
By Al Feng
Most Sinclair QL users in North America are
already aware that the Operating System (0S) in
their computer is called QD0S (i.e., QL Disk
Operating System). This may seem as a bit of a
misnomer since the QL comes with microdrives for
storage; and, all disk drive interfaces are third
party! In fact, QD0S allows (i.e., "forces") you
to select the device being addressed by the user
(e.g., ‘mdvi_', ‘flpl_', ‘raml_', 'winl_').
Clearly, either Sinclair Research Ltd. or Tony
Yebby realized that Uncle Clive's microdrives may
NOT be the ultimate storage device.
For those who are not overly familiar with the
inner workings of their QLs, the difference
between "British and "North American" QLs
involves more than BT (British Telephone)
connectors vs. "D" connectors. In addition to
evolution in the PCB (Printed Circuit Board)
layout (i.e., the hardware), various versions of
the QDOS were released (i.e., the firmware).
Not knowing which QD0S version you are running is
generally not a handicap or inconvience. For
practical purposes, a QL with an ‘AH’ ROM will
run the QUILL word processor as well as one with
an 'MG' ROM. The transparent difference is
predominantly in the ERROR handling (i.e., the
user usually doesn't see it).
To find out what version QDOS your QL is running
(all Qls made by SAMSUNG ELECTRONICS COMPANY Ltd.
in Korea have 'JSU' ROMs) type:
PRINT VERS <ENTER>
There are only a couple of reasons to know what
QDOS ROM code your QL has. The primary one is to
satisfy your curiousity. The second is if you
are running some programs (e.g., compilers which
depend on EXTENSIONS to QD0S). Often times, a
"patch" is included to compensate for
incompatibilities in the earlier code, so the
versions still doesn’t matter!
Okay, what do those designations mean? Does the
‘BH' designation mean that they think they
finally got it to a satisfactory point ["AHhhh"]?
Does the 'MG' designation refer to the Morris
Garage vehicles? Who can say for sure except the
person/people who chose the designations! After
all, the "GW" in 'GH-BASIC’ stands for "GEE WHIZ"
(No kidding! ).
A half dozen years ago, I asked my brother (an
IBM PC user) why PC-DOS (the IBM "specific"
version of MS-DOS) had to be LOADed via software
rather than being a permanent part of the system
(that is, as firmware on a ROM or EPROM). In
fact, I asked a lot of "almost stupid" questions
back then. To make a long story short, he
replied that the Disk Operating System (DOS) was
loaded as software so they (Microsoft, in this
case) could implement any subsequent changes to
the code more easily.
At the time, the idea of changing the code didn't
makes sense. After all, why re-write code if it
was written correctly the first time! Okay, my
computer experience was limited at the time, and
I was a bit naive about programming; but, I know
someone who thinks that the ABACUS Spread Sheet
programmers should have been able to write the
program in about 10K (yes, ‘ten’)!
Among the "almost stupid" questions I asked was
with regard to the differences (if any) between
DOS 2.0 and DOS 2.1. But, I digress. Very
simply, a change in the integer represents a
"major" change to the code, while “minor” changes
are represented by variances in the decimal or
hundredths place. In theory, higher numbers
indicate improved code (as with ERROR trapping).
Latter versions generally have "improved" code
(i.e., more ERROR trapping).
I£ you will make the allowance for a corparison
between the exceedingly crude DOS 1.0 for the
INTEL 8088/8086 chip series [e.g., CLS (CLear
Screen) was not included] and the very earliest
QLs which had a “dongle” (as the Brits apparently
refer to it) on the backside of the QL then from
my reckoning and recollection there are rough
analogues which one can make between MS-DOS
(Microsoft DOS) and QDos.
Sinclair Research Ltd. (or, Tony Tebby) chose to
use an alphabetic system for labelling. Just as
there were various MS-DOS versions, so there are
various QDOS versions. For example, we may
compare:
--( Qpos }-- --[ MS-Dos / Pc-Dos ]--
AH 2.1
Js 3.30
MGUK 4,00
(DOS is resident in the QL when the computer is
powered on because the code is contained on two
socketed ROM chips. Several years ago, Tom Bent
designed a small PCB which utilized a 27512
EPROM which could substitute for the two ROM
chips (see QUANTUM LEVELS 1:6 for schematic). A
big plus to Tom Bent's design is that it lets
your QL run cooler.
The 'J' series is probably the most predominant.
The 'JM' & 'JS' are the two most prevalent
versions still being sold in the UK. The 'JsU’
ROM is the same as the ‘'JS' ROM with the
exception of the size of the video scan when in
TV mode. The 'JSU' ROM accomdates the lower
resolution of NISC televisions than the British
PAL televisions generate (512x212 vs. 512x256).
Since the TV-mode on all the “British” ROMs
generate a screen having the same dimension as
the monitor display, the apparent difference is
that initializing with ‘F2' should allow
generation of eight colors rather than four
(unfortunately, I forgot to verify this when =
43
had temporary access to an RGB monitor].
Programs can "sense" which mode the computer is
in by PEEKing address 163890. In monitor-mode,
the value returned will be '0'. On all “British”
ROMs in TV-mode the value returned should be ‘1'.
On the 'JSU' ROM and the “rogue” 'MGSJ' ROM,
PEEKing this address when in TV-mode should
return a value;of '2'.
Just as therd are improvements to Microsoft's DOS
version 4.nn, so too are there improvements to
the ‘M' sevies ROM. Unfortunately, the price of
improvement may be incompatibility with code
which is LBYTEd/LRESPRed. The conflict /
conpatibility varies with the code. For example,
early (all?) versions of 4MATTER will not rum on
a QL having an ‘NGUK’ RCM. Code which is
“automatically” initialized ona ‘J’ series ROM
(such as SPEEDSCREEN RAM code) must be further
beckoned with the 'M' series ROM code.
It has been reported that Digital Precision's IBM
emulator would not rum on a QL having 'MG" code.
Details are not complete; and, I suspect he my
have the 'MGSJ' code as I have personally seen
THE SOLUTION running on an ‘MGUK' ROM. (Ed note:
My MGUK ROM QL {installed by Tom Rent) auns both
Solutions and PC Conqueror) In theory, the
'MGS3' code incorporates the NTSC television
screen scan with.the rest of the °MS' code. This
may or may not be a consideration.
Those of you familiar with MS-DOS will find a
canparison between the 'MGUK’ ROM and DOS 4.00
appropriate. It seems that enough nuisances were
unintentionally written into the ‘MG’ code that
it probably makes the more familiar ‘J' series
the code of choice (my opinion).
Just as "other" DOS exists for IM compatible
computers (e.g., WENDLIN-DOS), there are “proven”
alternatives to QD0S. The first of these is
‘ARGOS’ code which is used by CST (defunct
Systems Technology) on their THOR
but
The
reports
second is 'MINERVA’ by QVIEH.
"ARGOS' is apparently QD0S which has been tweaked
to support the THOR's hardware. It may NOT be
hardware compatible with the QL.
Unlike ‘ARGOS’, -'MINERVA' code was apparently
reverse-engineered to accomplish the same
functions as the Q00S code. The resulting code
is supposed to be superior in speed, particularly
in the screen handling routines. As of
mid-March, 'MINERVA' is only available directly
from QVIEW (in England).
If you're thinking of replacing your Q00S ROM
code, I recammend that you consider waiting for
'MINERVA' code to become available. If you can't
wait, then opt for the 'JS' code; after all,
‘gsu' code is available on your "spare" QL when
don't have a monitor.
HAPPY TRAILS, AND COMPUTING, TO YOU! Al Feng.
Ed Notes: Al touched upon the miin difference in
design of Q00S and MS-DOS, which a: QOS is
44
Fd Groy Entonprises, PO Rox 2168,
Englewood, CA 90305 was to send in an
advertisement of his wares. I'm sure
that Ed will kick himself in the britches
when he realizes that he missed the boat.
Instead of using one of his old ads, I'll
just make same coments. Ed Grey carries
a whole line of TS-2068 support items and
runs a West Coast USA BBS called "The
Grey Matter”. His Telephone number for
ordering software and hardware support
items is 213-759-7406, The BBS telephone
is: (213-971-6260). This BBS is one of
the most informative and the most used by
Sinclair Timex users. If you want to
talk to an enthusiastic Sinclair Timex
person, call Ed. If you want to find out
what goes on in Sinclair Timex Computing,
call the BBS (with your computer).
The problem with this issue was the
DECISIONS about what to include! The
articles were selected from about two
issues worth of excellent material given
fellow Sinclair Timex
should go to the
authors, not to yours truly.
There several other excellent articles
about the QL and S-2068 that are
awaiting space in the magazine. They
aren't “culls”, but are of a length that
just couldn't be included in this issue.
FRANK DAVIS, your new publisher will
need this same outstanding support fron
the writers in order to continue the
depth of coverage that has been a
tradition with Update Magazine. I feel
sure that all of our outstanding writers
will continue to support the users
through the pages of Update.
RE-SUBSCRIRE NOW! you have NE more
issue of your subscription caming (July).
Frank Davis, the new publisher, needs to
build his 1991 subscriber list and needs
to have as many early subscribers as
possible for his planning. Please send
your $18.00 subscription renemrl to:
FRANK DAVIS, PO BOK 1095, PERU, IN 46970,
A PRIMER «FOR USING «=A OL-MOTILATR
by Al Feng
her
okay. Just kidding, We'll discuss MS-DOS
with the QL instead. But, after hearing "all"
those bad things about MS-DOS (Microsoft's Disk
Operating System for IBM compatible computers)
one can only presume that rumning a SINCLAIR QL
in emulation mode has to be a mutilation of the
QD0S operating system. One would like to think
that it wouldn't happen; but, the price of
software emilation code is still less than an
MS-DOS compatible computer.
The following isn't going to be a discourse about
whether you should be using an emulator on your
QL. Only you know whether there is a need "at
home" for MS-DOS compatibility; and, if an
emulator is going to be a satisfactory route.
The following is going to tell you how to
overcome some of the conceptual inconveniences of
MS-DOS whether on a QL, or on an MS-DOS specific
computer.
The first thing you have to know is that drives
are described alphabetically rather than
numerical] Thus, a drive may be labelled 'A'
through 'Z'. The Operating System (OS) knows you
are describing a drive because a colon (:) is
used as a delimiter immediately after the letter.
The reason for this is because a file may be
named 'A.BAT’, 'A.COM' or 'A.EXE' and be
otherwise executed if you simply INPUT
followed by the '<ENTER>’ key. QD0S uses an
underscore ("_') as the general delimiter. Thus:
A
flpl_
flp2_
The najor r difference is that QDOS allows/forces
you to describe the physical/virtual device being
addressed. On the other hand, MS-DOS assigns
labels on a “logical” basis unless otherwise
specified (some rules do apply).
On an MS-DOS system, if you have two floppy
drives, they are 'A:' and 'B:'. If you have a
hard drive, it is 'c:'. I£ you have one floppy
drive and a hard drive, the latter is still 'c:'
(I told you, some rules apply). If you have two
floppies, no hard drive, and have set up a ram
drive, then the ram drive becomes 'C:'. If you
have two floppies, a hard drive, and a ram drive,
then the ram drive becomes 'D:'.
Ram drives are static and are configured during
BOOT-up via the CONFIG.SYS.
Even if you have a limited amount of overall ram
in your system, but more than 384K, then you
should seriously consider setting up a small ram
disk on your mutiliated QL, laptop, or early PC.
A 48K drive is sufficient for DOS 3.nn and 72K
for DOS 4.nn.
An example of a CONFIG.SYS for DOS 3.nn where the
size of the ramdrive is indicated by the number
following the "device=" statement (in this case
"48K'):
buf: fers= 15
device ansi .syS
Unfortunately, the boys-and-girls at Microsoft
are sloppy coders (Captain Midnight would not be
happy), and the same files in DOS 4.nn tend to be
larger than in DOS 3.nn. For DOS 4.nn_ your
CONFIG.SYS file will be similar to the following
(note the name change from VDISK to RAMDRIVE):
buffers=15
files=30
device=ramdrive.sys 72
Okay, 48K is an awfully small ram disk. What are
we going to put in it (and, why?)? There are two
files which should be transferred to a ramdrive
regardless of the size and speed of the system
being used (this includes AT classs machines).
The first is COMMAND.COM and the other is
FORMAT ..COM.
As these files were designed, they are what are
referred to as external DOS commands. An
external command is not retained in the systems
memory. This is because DOS was originally
designed to rum on a machine with as little as
16K of memory.
Thgabi lity. te, inktiake g PL2e SAR wore
considered task oriented. After a program is
LOADed, DOS dumps the COMMAND.COM from memory,
and brings it back when the program is quit.
This is why you may see a message which instructs
you to "replace disk with COMMAND.COM in drive
A:", This can be circumvented by using the
statement:
set comspec=c: command. com
where 'c:' is the location where the COMMAND.COM
can be found (in this case a ramirive ... adjust
accordingly). This can be indicated in a line in
the AUTOEXEC. BAT.
While COMMAND.COM is always necessary, FORMAT.COM
is not. It is, however infrequent a task,
especially inconvenient (i.e., "slow") to have
FORMAT.COM load from a disk rather being
resident. By transferring an appropriate
FORMAT.COM to a ramdrive, you have turned it into
an almost-internal command
(using FPORMAT.COM will be discussed later).
example of a true internal DOS command is COPY.
An
An example of your AUTOEXEC.BAT should be similar
to one of the two following examples:
copy format.com c:
copy command.com c:
copy free.com c:
c:
copy format.can ¢:
copy command.com c:
set comspec=c:camand.com
copy dr.can c:
c
T£ you need MODE.COM, then include it as a line
of your AUTOEXEC file.
FREE.COM is from the first PC MAGAZINE Utility
disk, DR.COM was a freebie from PC/COMPUTING
magazine.
FREE.COM tell you how mich "free" space is left
on adisk. This sounds, well, stupid. But, if
you have blank, FORMATted disks without files,
you cannot determine the size with the DIR
command. In these instances, FREE.COM will let
you determine if it is a 360K or 720K disk:
C:> FREE B:
DR.COM (actually DIRMAGIC.COM) is a conveni
front end program which was distributed "free" TE
you subscribed to PC/COMPUTING. It allows you to
COPY/DELETE/RENAME/VIEW/etc. from a dynamic menu.
FREE.COM and DR.COM are freeware (vs. shareware)
programs which are supposed to be availble on
various bulletin boards. You can probably get a
copy of these two files from Bill if you send him
a few of dollars (?) to cover
media/packaging/postage and tell him which disk
format (720K or 360K) you need.
The reason the example of the AUTOEXEC.BAT above
ends with a 'C:' statement is that a lot of
activity can be initiated from the 'c:' drive:
C:> COPY A:*.* B:
is the same as: WOOPY flpl_ to £lp2_
Compare: C:> COPY A:DR.COM B:
A:> COPY DR.COM B:
B:> COPY A:DR.COM
to: COPY £1pl_DR_COM TO £1p2_DR_COM
Also compare:
C:> COPY A:DR.COM B:DIRMAGIC.COM
to: COPY £lpl_DR_COM TO f£1p2_DIRMAGIC_COM
The syntax of a DOS statement is clearly mre
compact since the current "path" can be implicit
in the statement. Working fram a "C:>" prompt is
similar enough to working with a comand cursor
in "WINDOWTO" that you can consider performing
general file management fran this drive.
Similarly, if you want to delete a file you would
use the DEL statement:
46
C:> DEL A:DR.COM
A:> DEL DR.COM
DEL A:DR.COM
DELETE £1p1_DR_COM
B:>
to:
are going to LOAD an application
then INPUT the drive designation
‘<ENTER>'; and, then the file name.
If you
(program),
followed by
For example:
c>
A: <ENTER>
A:> QUILL
The syntax for FORMAT.COM with an emulator
similar to the FREE.COM utility:
is
C:> FORMAT B:
and, B:> C:FORMAT
OR: C:> FORMAT A:
and, Ar> C:FORMAT
With the emulating QL the density is determined
by the emulating code. There are conditions
which may be needed if ‘you wish to FORMAT to a
density other than the drive's normal
specification.
UH-oh. Was mention made of how to construct your
AUTOEXEC.BAT and CONFIG.SYS files? Yikes. The
MS- [Nasochistic & Sadistic] method is for you to
use EDLIN! If you can get a copy of DR.DOS's
(Digital Research's DOS) EDITOR.EXE then you will
have an easy-to-use line editor. If not then use
ANY word processor:
Set the left margin to zero ('0');
the upper and lower margins to zero; and,
ensure that there is no header or footer.
Next, transcribe the appropriate example(s) as
individual lines of text. SAVE each individually
as an appropriately named ASCII file. Transfer
the file to your DOS disk.
That's about all you really need know to be
functional on the precarious, MS-DOS iceberg.
HAPPY TRAILS, AND COMPUTING, TO YOU. Al Feng
————
THE QUANTA LIBRARIAN FOR NORTH AMERICA?
Will the active QUANTA LIBRARIAN please get
in touch with Update Magazine. Why? Well,
I'd like to help publicise this fantastic
group of programs and utilities. 1 have had
the first 15 Quanta Library Disks for about a
year. There hasn't been mich published about
the utility of this good library or how the
users can get the disks. Perhaps there are
enough interested subscribers to form a Quanta
Group in North America? Update will help.
‘THE NEWS HERALD, Panama City, Fla.
;-THE CANADIAN REPORT
Kanadian fonetik langwaje
TORONTO, Canada (KNT) — Like a solitary savior striving to
rescue the illiterate from the flummadiddie and kerfuffle of the
English language, Ted Culp envisions “that gloreus day all ling-
gwi owtrajes wil end!””
At that inevitable moment when English collapses under the
weight ofits confusing, itrational structure, Culp says he'll beready
with the Canadian “langwaje,”’ a sane replacement for the “gar-
bage”’ that annoys people and produces illiteracy.
“"As this inferior langwaje iz displased everywhare ... illiterasi
shud disapeer completely,” wrote Culp, the meticulous publisher of
the Times Ov Toronto, and a teacher and ardent proponent of simpli-
fying a language that drives him nuts.
Ina multiethnic country where combat over language could
qualify as a national pastime, many view a phonetic-type spelling of
English as laughable or an uncomfortable reminder that some real-
ly spell like this.
‘Others view Culp’s changes as an assault on the Queen's English.
After ail, many loyal Canadians still sing God Save the Queen,
But this is no joke to Culp. He is dead serious — rather, ‘ded
serius” — and he speaks passionately about the foibles of language.
He has reduced the alphabet to 25 letters — eliminating ‘q’” —and
says other changes will be necessary to reform the world's second
most popular language. But changes can’t come quickly, he warns,
or they won't be accepted.
Changing “‘cily” to “sili” — eliminating the soft “‘c” and replacing
it with “'s"” — will be accepted, he said, but replacing the hard “c"*
with a “ke will be tough because that would produce 0 Kanada.
mee resists the temptation to teach the Canadian “‘langwaje”’ to
his high school students, but does not hesitate to point out the pro-
blems with English. :
“It wil spred arownd the wurld,” Culp says. ‘It wil triumf.”
Ed note: Now thars a Cannuck thet nos wot hez
talken bout! Ether thet er ole George hez ben
Jeten him reed hiz kopi uv Update Magazine. Ile
bet thets whut hapend, nunthles hez on mi band-
wagun. We gota dew sumthin fore th kids an thar
rap talk taks ovr fer sur. -BJ_
L_PLATYPUS
folsortwuare
AND UE’RE SPREADING IT!
RHG_is adding so many NEW and
EXCITING ITEMS to our line that
our storerooms are BULGING! We
have added more that 25 NEW PAGES
and changed over
BIG 40+ page catal want te
make sure that you do ‘et miss out
on anuthing we may be able to help
you with In your computing.
If you will send us $3.00 you 1
neceive our catalog ith a $3 off
coupon for your first order. ANDs
nd along 12 business size SASEs
and you will receive 12 monthly
updates and special mailings. $5
discount coupon in first mailing!
RG ENTERPRISES
1419 1/2 7TH STREET
OREGON CITY, OREGON 970N5
503/655-7484 # NOON+!0 TWWE-SAT
hers Ia our
QL to PC file transfers
SPREADSHEET [text & valid formulas / some functions do not transfer to LOTUS (e.g., askt & askn)]:
PC-ABACUS
LoTUS 1-2-3
QL-ABACUS to:
QL-QUILL to PC-ASCIL.TXT
eS PC-QUILL
WordPerfect
The "base" fee ts: $5.00 for the Ist file,
$4.00 for the-2nd fil
$3.00 Cor the 3rd fil
32.00 Cor the ath file,
base +
base +
base +
base +
base +
1.60 / screen
4.80 / screen
2.50 / 25 lines
3.00 / page
5.00 / page
A "sereen” 1s defined as: 20 rows x 8 cols.
Ahalf-screen is: 10 rows x 8 cols.
A quarter-screen is: 5 rows x 8 cols.
$1,00 for each subsequent file.
4 A "page" 13 deCined as: 30 lines maximim x 80 columns (or, about 300 words).
** Partial pages will be rated at $0.10 per line in QUILL and $0.15 in WordPerfect.
** A quarter-screen minimum increment for spreadsheets.
PLEASE NOTE: The new Cile(s) will be supplied on a 3.5" 120K disk.
If you need a 5.25" 360K disk, then please supply a labelled, pre-Cormatted 360K
disk along with any original media. If you send microcartridges, please ensure
that they are of high quality AND that you retain backup copies during the Interim.
Of course, any original media (disks/microcarts) will be returned.
AL FENG
1§ Wake Robin Court
Woodridge, IL 60517 47:
(708) 971-0495, :
If you have other needa, please enquire:
THE QL ISSUE DISK PROGRAM
And how goes it, QL?
The issue disk program is designed to
give publicity to the programmers who are
working for us and to put the Author into
direct contact with the users. Normally,
an issue disk title is offered in a couple
of issues of the magazine and then rotated
out. This introduces the programmer to the
users and establishes rapport between them.
The programs in the issue disk belong to
the authors. Update's only involvement is
in their early distribution “at
introductory prices".
NOTICE that Bill Cable (Wood and Wind
Computing) now has the capability of
providing his software on both 5 1/4" and 3
1/2" disks (and microdrive cart). See his
ad else- where in this issue. Also NOTICE
the ad by AL FENG (Platypus Software).
Both of these authors are producing
software for the QL and IBM systems.
Other North American software authors
will be introduced to the users as they
cane aboard. The issue disk program's
purpose is to encourage the creation of
NORTH AMERICAN SOURCES in support of
Sinclair Computing. The program is
enjoying moderate success. Two years ago
Peter Hale (EMSOFT) was about the only
recognized source of American Software for
the QL. Now he is joined by others. (See
EMSOFT Ad in this issue).
While the Brits are jolly good
fellows, and they have given us (sold us)
many good softwares, Update Magazine takes
the position that QL users in North America
should not have to swim the pond to get
useful software. Our own programmers are
available for call to service the users,
and are eager to do so.
Didja know that PSION, the producer
(emeritus) of our Four great QL Softwares,
is now an American Corporation? AND, Bill
Cable has a working relationship with PSION
ta do follow-on improvement programming
with the PSION suite? AND, that EMSOFT
(Peter Hale) is a Dealer for the new PSION
Mobil computers? AND, I'm squirreling away
saving to buy one of the new PSION Mobile
computers? I dont know what thats got to
do with Issue Disks, but it is all relative
to the subject of Hobby computing. ENJOY!
48
SINCLAIR QL ISSUE DISKS (MOV)
The following new issue disks are offered for QL
systems of all configurations. The programs are
omeither 80 track Diskette or MDV cartridge.
If ordering for MDV send a formatted MOV
cartridge. All prices are $22.00 (post paid) and
are guaranteed to satisfy.
1, "HARTUNG COLLECTION” DIK
Address and QSO file managers, plus a raft
of disk utilities. All in Superbasic. Lots of
tricks and hints for the programmers. Requires
sane knowledge of Superbasic or a yen to learn.
2, "FENG QU Tec" DISK
QLUTer - QL UTilities to m-clutter your
disks and tapes. COPY, DELETE, FORMAT, PRINT,
VIEN functions. TURBO compiled for SPEED.
Multitasks and minimal key press. Also has--
SMAP SHOT - a directory colum or condensed
print out program. ALSO includes "VEGEMAT” - a
QLUsTer - very similiar to QLUTer (above)
but has extended functions using some SUPER
TOOLKIT 12 features. You must have the Toolkit
(TR2_EXT) for this program. SNAP SHOT and
Vecmrat also included.
4, CABLE ARCHIVE DISK
ARCHIVE utilities and exensive doc file
instruction manuals.
JOIN,
the manuals lead one to canplete understanding
of Archive and these extensions.
If ordering {or MOV send two miv cartridges- too
many programs to fit into one cart.
oY
5, "CRE
A very useful TOOLKIT program for ng
both DISKS and MICRODRIVE. HELPER lets pene
fran one mediun to another, Read or Copy doc
files to paper or screen, repeat format miv
carts or floppy. Uses screen windows to see two
directories from and to, copies over existing
files in disk mdv, copy selected files. Does
mot conflict with TR2.
Order to UPDATE Magazine, address on cover.
Check or money order accepted.
THE 13-2068 ISSUE DISK PROGRAM
Available until July 31, 1990
While Frank Davis intends to continue the
Issue Disk program it is likely to undergo
change. The software offered in these disks
belong to the authors and new agreements will be
required. Some titles may not be available
after July. yi
It has been difficult to pursuade and cajole
NEW S-2068 SOFTWARE from the few programmers
who are still active. Most seem to be modifying
older cassette software for disk drive
operation, Thats kinda like modifying a
row-boat to become a cruise ship.
But this issue brings an excellent new
BUSINESS Software, by Jim Bretz. My om
softwares, Daisy, Smart Text, and Dbasel, were
thrown into the Issue disk program to fill a
void of new DISK BASED Software. These titles
will be withdrawn after July because all are
constantly undergoing upgrades, manual
addendums, and require personal support via
letters and telephone.
My Fortune 800 Software house, "Gulf Micro”
will continue to work on these and provide new
full-length software as time goes on. I wish
that other progranmers would join in such
efforts. Larry Kenny and John McMichael are
doing some good NEW software. AND, the Toronto
TSUG has some very active progranmers who are
producing LKDOS utilities. We need to entice
others to join in. Software designed from the
ground up for DISK DRIVE SYSTEMS is what we
need. Old Cassette software with the SAVE line
modified wont fit our needs, and if thats all
the users have available they will move on to a
computer system that has the software.
A lot of new programming is going into the
area of EXTRA MEMORY usage. Larmour Crawford is
predominant in this area and I'm trying to
assist. Please read the article "The Ql. ISSUE
DISK PROGRAM". Our TS-2068 issue disk progran
has not had as much success, but lets keep on
trying. -BJ_
‘The following Disk software end utilities are
offered. The individual disk listings ace given
by TYPE of Dos that the disks are prepared for.
‘The disks are available on 5-1/4" Double
Side Double Density Diskettes, either 40 Track
(360K) or 80 Track (720K) disk drives. If you
have a 5-1/4 inch disk drive these disks will
work in your system, Esch disk has at least 300K
of programs and utilities. The price is §22.00
per disk (postage paid) (add 1.00 to Canada).
Checks or Honey Order.
DAISY.BS : A Complete 75-2068 Software Systen,
Data base management, Word Processing,
Autaratic formatting,
Over 20 integrated programs,
Mail Merge annex. For LXDOS Only. (Oliger
DOS users order Sart Text.) An Update
Magazine Software.
SWIRT TEXT: A versatile Data Base and Word
Processor software. includes a Mail Merge
annex to create mailing lists for
automtic repeat letters. Label printing,
Disk Management. By Update Magazine.
Oliger Dos only. a
VIEW CALC UPGRADE : The old PSION View Calc
program Expanded and Converted for LRDOS
with Spread Sheet Printer. By Bob
Mitchell. For LXDOS Only.
1988 UPDATE COLLECTION: The Hail Herge Software
plus the disk filled with utilities, For
Lxpos or Oliger DOS
1989 UPDATE COLLECTION: Filled with all of the
utility programs published during 1969.
LXDOS or Oliger DOS
SMART TEXT 64: (Coning) Smart Text software in
64 Colum Screen for use with the Zebra
08-64 Cartridge. For OLIGER DOS ONLY.
(Do not order until release is announced)
DBASE-1 : (Coming) A new RECORD software, ‘The
data bese will be very flexible with
applications for Mail Lists, Inventories,
or just about any purpose one needs. Sort
by any line, and by first or last group
within the line. A "Sort Disk Files”
feature will allow one to create and sort
thousands of continuous records, (Do not
order wntil release is announced. }
1990 UPDATE COLLECTION: All of the Utility
programs being published during this
current year. (to be released in Oct.)
BUSINESS AOQUUNTS: ew major Business
Software for the 18-2068, By: Jim Brets
This software is ven as a key-in
project and can be ordet for imediate use.
See the article in this issue. Available
for LKDOS OR SPDOS. 5 1/4" DSDD 80 TRACK
720K FORMAT. Use your ow Printer Driver
Code or LKDOS version 3 driver, Needs 64
Colum support by either TASHI or Zebra
08-64 cartridge.
NOTE TO PROGRAMMERS: TO can join in with the
Issue Disk Program. All you need to do is
to write # ~Manual" for your software
to be published, snd supply the disk.
BACK ISSUES OF UPDATE
are available in YEAR Groups for $18,900
per year (post paid) (add $1.00 to Canada)
Hach year group hes over 200 pages of
wostiy useful programs and utilities as
key-in projects and MANY Tutorials for
Basic and MC programming. Available are:
1988 Year Group (All T3-2068 Supportive)
1989 Year Group (78-2068 and Sinclair Qt
(LimiTED Shock Remaryiag)
49
LKDOS SOF T-WARE
MAXCOM 300/1200 baud Tecininal/BBS
This full feature modem software fels you effectiviy link the modem to the disk, so you can upload or
dawnload files larger than IOOK.This fats you send HMI saves and Inrge text files ex wall as Basic or Coda
flea, whieh olker modem prograins couldn't send because of memary llinitations. Aisa files can be sent with
or without » Information header (Spec-term compatible) . ;
It aise has 2 64 column display and Is the anly 2068 modem pragram that will run st full 1200 baud
without miasing characters. Other features of the terminal mode are IDM graphic characters, nuto-
macro keys, IIOK disk buffer for captured text, auta repeat keys.
The BOS Is the most fe nvaitable for the 20668 and allows the remate user full access to the disk
drives similar to » CPM ODS. Features of the BBS ere - 300/1200 baud, operation with fast reponce even at
1200 baud, Passwords, priority levels, Use Utne Ilinits, Multiple Message Bases, Uploads and Downloads are
net thnited by Memory, Dual Window Monitor screen, Interupt driven time out and Hangup protection, Alaa
Keeps » User log of callers Names and Activity an disk so a printer lant needed and Its easily customised and
expanded.
jar,
MAXCOM can be used with the 2050 modem or with the Z-SIO RS232 Interface and a 300/1200 baud
modem. (a versian for the Aerca S232 Ia In the works). <
PRICE: $24.95
LANKEN DISK EDITGR
+ This pregran [ats you examine or change any byte on a LXdas disk. It Is useful In repairing damaged or
glitched disks, changing the disk Name or head speed etc. You ¢: also exainine the track map and disk Info
headers.
Tha documentation for the disk editor alsa Includes Information on how ta access LKdos from Machine
Cede and Information on the structure of the disk catalog end dats blacks.
PHICE: $15.00
SEQUENTIAL/RANDOM Access FILES
This utility Is» ram resident extension te the LKdos operating system and lats you create, reed from, or
write to very large date files kept on disk. It usea the commands OPENK, CLOSE, PRINTR, INPUTH, and
INKEYSH to access the files fram BASIC. There Is also » high speed search command for finding » text string
within the data file. Using the TAB command, you ean randamly accass directly any record In a file
The utility [a apsily used within your basle programs and hes f fat of uses, from storing large date files,
creating large spall chacker dictlonarys or even converting yeu basic programs to an ascit text file -
Thia ulllily tats you take the limits off of the date capacity of the 2068 Files on disk can be huge |
A simple dots base program Is Included on the disk to demenatrate the utillty.
PRICE: $ 15.00
Coming Seon from Larken Electronics <
ae The Larken Desk Top Publisher «* Produce high quailty printing (like this page ) with sn epson compatible
printer and LXdos, The enlire Hi-res graphic page Ia kept on the disk and acrailing though the page Is on easy
as clicking the Joystick or mouse on the tcan type menu. Text and Graphic editing with multiple sized fants
will also be fastured.
ae Spall Checker (or Tesword and M-Script e+ Tha utlllly pragram will fet yeu have your wordproceasor
text flee ba checked by @ 350K dictlanary.
All Prices SUS - Specify type of drive whan ordering,
LANKEN ELECTRONICS ANJ2 NAVAN, ONTARIO CANADA, K4B-1H9
(613)-835-2660
50 UPDATE MAGAZINE